最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue處理emoji表情占位符的操作方法

 更新時間:2024年06月30日 08:42:20   作者:cc_z  
在計(jì)算字符數(shù)時,一般情況下,英文字符、數(shù)字和大部分符號都可以被視為占一個字符長度,因?yàn)樗鼈兪菃蝹€字節(jié),然而,對于某些特殊字符,如表情符號和部分非英文字符,會被認(rèn)為占據(jù)了多個字符長度,本文給介紹了vue處理emoji表情占位符的操作方法,需要的朋友可以參考下

在計(jì)算字符數(shù)時,一般情況下,英文字符、數(shù)字和大部分符號都可以被視為占一個字符長度,因?yàn)樗鼈兪菃蝹€字節(jié)。然而,對于某些特殊字符,如表情符號和部分非英文字符(比如中文、日文等),由于它們的 Unicode 編碼需要多個字節(jié)來表示,因此在某些情況下會被認(rèn)為占據(jù)了多個字符長度。

對于表情符號(emoji)或者一些特殊符號,它們的 Unicode 編碼可能會采用代理對(surrogate pair)的形式來表示,這種形式將每個字符拆分為兩個 16 位的編碼單元,因此在某些計(jì)算中,每個代理對被視為占據(jù)了兩個字符長度。所以在這種情況下,為了準(zhǔn)確計(jì)算字符數(shù),需要將表情符號或者特殊符號看做占據(jù)了兩個字符的長度。

在實(shí)際開發(fā)中,開發(fā)者根據(jù)需求來決定如何處理這些特殊字符的字符長度計(jì)算規(guī)則,有時候會采用每個特殊符號占據(jù)兩個字符的計(jì)算方式,以確保字符長度的準(zhǔn)確性。而有些情況下,開發(fā)者可能會希望每個特殊字符只占一個字符長度(比如用戶輸入限制),這需要根據(jù)具體業(yè)務(wù)需求來定義相應(yīng)的處理方法。

按照用戶輸入的內(nèi)容去計(jì)算字符數(shù),原有是emoji表情跟中文都是占2字符的,現(xiàn)以1字符做處理。

寫一個包含表單內(nèi)容的 HTML 結(jié)構(gòu),主要功能是要求用戶輸入功能介紹,并限制介紹內(nèi)容的長度不超過 120 個字。

        <div class="modify_content">
          <label class>請輸入功能介紹</label>
          <div class="frm_controls" style="position:relative">
            <div style="position: relative;">
              <el-input v-model="value" multi filter="trim"></el-input>
              <span class="input-tips">{{getLen(value)}}/120</span>
            </div>
            <p class="fail" v-if="getLen(value) > 120">
              <span>●</span>
              <span class="frm_msg_content">功能介紹長度不超過120個字</span>
            </p>
            <p class="frm_tips">請確認(rèn)介紹內(nèi)容不含國家相關(guān)法律法規(guī)禁止內(nèi)容</p>
          </div>
        </div>

這里獲取當(dāng)前內(nèi)容是調(diào)用了getLen的方法:

定義了一個對象 methods,其中包含了一個函數(shù) getLen(v)。這個函數(shù)的作用是獲取字符串 v 的長度,考慮到了表情字符的情況。

具體來說,函數(shù)內(nèi)部使用正則表達(dá)式 /[\uD800-\uDBFF][\uDC00-\uDFFF]|./g; 匹配字符串 v 中的 Unicode 字符,其中包括標(biāo)準(zhǔn)的字符以及代理對。然后使用 match 方法將匹配到的字符存儲在數(shù)組 surrogatePairs 中,或者若沒有匹配結(jié)果則賦值為空數(shù)組 []。

最后,函數(shù)返回?cái)?shù)組 surrogatePairs 的長度,即字符的實(shí)際數(shù)量,來計(jì)算字符串 v 的實(shí)際長度(包括表情字符)。

  methods: {
    // 獲取字符長度
    getLen(v) {
      const regex = /[\uD800-\uDBFF][\uDC00-\uDFFF]|./g;
      const surrogatePairs = v.match(regex) || [];
      const actualLength = surrogatePairs.length; // 計(jì)算表情字符的實(shí)際長度
      return actualLength; // 按照長度計(jì)算
    },
  }

到此這篇關(guān)于vue處理emoji表情占位符的操作方法的文章就介紹到這了,更多相關(guān)vue處理表情占位符內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue源碼nextTick使用及原理解析

    vue源碼nextTick使用及原理解析

    這篇文章主要介紹了vue源碼nextTick使用及原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 前端Vue3項(xiàng)目打包成Docker鏡像運(yùn)行的詳細(xì)步驟

    前端Vue3項(xiàng)目打包成Docker鏡像運(yùn)行的詳細(xì)步驟

    將Vue3項(xiàng)目打包、編寫Dockerfile、構(gòu)建Docker鏡像和運(yùn)行容器是部署Vue3項(xiàng)目到Docker的主要步驟,這篇文章主要介紹了前端Vue3項(xiàng)目打包成Docker鏡像運(yùn)行的詳細(xì)步驟,需要的朋友可以參考下
    2024-09-09
  • vue中el-message的封裝使用

    vue中el-message的封裝使用

    本文主要介紹了vue中el-message的封裝使用,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • vue2.0在沒有dev-server.js下的本地?cái)?shù)據(jù)配置方法

    vue2.0在沒有dev-server.js下的本地?cái)?shù)據(jù)配置方法

    這篇文章主要介紹了vue2.0在沒有dev-server.js下的本地?cái)?shù)據(jù)配置方法的相關(guān)資料,非常不錯,具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • 利用vue + element實(shí)現(xiàn)表格分頁和前端搜索的方法

    利用vue + element實(shí)現(xiàn)表格分頁和前端搜索的方法

    眾所周知Element 是一套 Vue.js 后臺組件庫,它能夠幫助你更輕松更快速地開發(fā)后臺項(xiàng)目。下面這篇文章主要給大家介紹了關(guān)于利用vue + element實(shí)現(xiàn)表格分頁和前端搜索的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-12-12
  • 在Vue3中使用Vue Tour實(shí)現(xiàn)頁面導(dǎo)覽

    在Vue3中使用Vue Tour實(shí)現(xiàn)頁面導(dǎo)覽

    Vue Tour 是一個方便的 Vue.js 插件,它可以幫助我們在網(wǎng)站或應(yīng)用中實(shí)現(xiàn)簡單而靈活的頁面導(dǎo)覽功能,本文我們將介紹如何在 Vue 3 中使用 Vue Tour,并通過示例代碼演示其基本用法,需要的朋友可以參考下
    2024-04-04
  • Vue.$set 失效的坑 問題發(fā)現(xiàn)及解決方案

    Vue.$set 失效的坑 問題發(fā)現(xiàn)及解決方案

    這篇文章主要介紹了Vue.$set 失效的坑 問題發(fā)現(xiàn)及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Vue通過moment插件實(shí)現(xiàn)獲取當(dāng)前月的第一天和最后一天

    Vue通過moment插件實(shí)現(xiàn)獲取當(dāng)前月的第一天和最后一天

    這篇文章主要介紹了Vue 結(jié)合插件moment 實(shí)現(xiàn)獲取當(dāng)前月的第一天和最后一天,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-10-10
  • vue3.0安裝element?plus依賴的過程

    vue3.0安裝element?plus依賴的過程

    這篇文章主要介紹了vue3.0安裝element?plus依賴的過程,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • vue父子模板傳值問題解決方法案例分析

    vue父子模板傳值問題解決方法案例分析

    這篇文章主要介紹了vue父子模板傳值問題解決方法,結(jié)合案例形式分析了vue.js父子模板傳值問題相關(guān)實(shí)現(xiàn)方法與具體操作步驟,需要的朋友可以參考下
    2020-02-02

最新評論

特克斯县| 大理市| 浑源县| 蛟河市| 五台县| 河南省| 林西县| 连平县| 唐河县| 鄂温| 峨眉山市| 平湖市| 广南县| 车险| 维西| 大新县| 新邵县| 尼勒克县| 江川县| 鄂托克前旗| 富裕县| 岢岚县| 车险| 龙胜| 保山市| 五华县| 武功县| 宣汉县| 鄂托克前旗| 泸西县| 定边县| 苍梧县| 都江堰市| 新乡市| 邵东县| 鲜城| 宜州市| 南城县| 东兰县| 化德县| 宁城县|