国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

如何在Vue中定義和調(diào)用過(guò)濾器?

這篇具有很好參考價(jià)值的文章主要介紹了如何在Vue中定義和調(diào)用過(guò)濾器?。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

過(guò)濾器(Filters)是 vue 為開(kāi)發(fā)者提供的功能,常用于文本的格式化。過(guò)濾器可以用在兩個(gè)地方:插值表達(dá)式和 v-bind 屬性綁定。過(guò)濾器應(yīng)該被添加在 JavaScript 表達(dá)式的尾部,由“管道符”進(jìn)行調(diào)用,示例代碼如下:

<l--在雙花括號(hào)中通過(guò)“管道符“調(diào)用capitalize過(guò)濾器,對(duì)message的值進(jìn)行格式化-->
<p>{{ message | capitalize }}</p>

<!--在v-bind 中通過(guò)“管道符”調(diào)用 formatId過(guò)濾器,對(duì)rawId的值進(jìn)行格式化-->
<div v-bind:id="rawId| formatId"></div>

在創(chuàng)建 vue 實(shí)例期間,可以在 filters 節(jié)點(diǎn)中定義過(guò)濾器,示例代碼如下:

const vm = new Vue({
    el: '#app',
    data: {
        message: 'hello vue. js',
        info: 'title info'
    },
    filters: { // 在 filters 節(jié)點(diǎn)下定義“過(guò)濾器”
        capitalize(str) { //把首字母轉(zhuǎn)為大寫(xiě)的過(guò)濾器
            return str.charAt(0).toUpperCase() + str.slice(1)
        }
    }
})

在 filters 節(jié)點(diǎn)下定義的過(guò)濾器,稱為“私有過(guò)濾器”,因?yàn)樗荒茉诋?dāng)前 vm 實(shí)例所控制的 el 區(qū)域內(nèi)使用。

如果希望在多個(gè) vue 實(shí)例之間共享過(guò)濾器,則可以按照如下的格式定義全局過(guò)濾器:

// 全局過(guò)濾器-獨(dú)立于每個(gè)vm實(shí)例之外
// Vue.filter()方法接收兩個(gè)參數(shù):
//     第 1 個(gè)參數(shù),是全局過(guò)濾器的“名字“
//     第 2 個(gè)參數(shù),是全局過(guò)濾器的“處理函數(shù)“
Vue.filter('capitalize', (str) => {
  return str.charAt(0).toUpperCase() + str.slice(1)
})

過(guò)濾器可以串聯(lián)地進(jìn)行調(diào)用,例如:

<!--把 message的值,交給filterA 進(jìn)行處理-->
<!--把filterA處理的結(jié)果,再交給filterB進(jìn)行處理-->
<!--最終把filterB處理的結(jié)果,作為最終的值渲染到頁(yè)面上-->
{{ message | filterA | filterB }}

連續(xù)調(diào)用多個(gè)過(guò)濾器的示例代碼如下:

<!--串聯(lián)調(diào)用多個(gè)過(guò)濾器-->
<p>{{text | capitalize | maxLength)}</p>

//全局過(guò)濾器-首字母大寫(xiě)
Vue.filter('capitalize', (str) => {
  return str.charAt(0).tolpperCase() + str.slice(1) + '--'
})

//全局過(guò)濾器 - 控制文本的最大長(zhǎng)度
Vue.filter('maxLength', (str) => {
if (str.length <= 10) return str
return str.slice(0, 11) +'…'
}

過(guò)濾器的本質(zhì)是 JavaScript 函數(shù),因此可以接收參數(shù),格式如下:

<!-- arg1和 arg2 是傳遞給 filterA 的參數(shù)-->
<p>{{ message | filterA(arg1, arg2) }}</p>

//過(guò)濾器處理函數(shù)的形參列表中:
//  第一個(gè)參數(shù):永遠(yuǎn)都是”管道符“前面待處理的值
//  從第二個(gè)參數(shù)開(kāi)始,才是調(diào)用過(guò)濾器時(shí)傳遞過(guò)來(lái)的arg1和arg2參數(shù)
Vue.filter('filterA',(msg, arg1, arg2) =>{
  //過(guò)濾器的代碼邏輯...
}

過(guò)濾器傳參,示例代碼如下:

<!--調(diào)用 maxlength 過(guò)濾器時(shí)傳參-->
<p>{{text | capitalize | maxLength(5)}}</p>

//全局過(guò)濾器 - 首字母大寫(xiě)
Vue.filter('capitalize',(str) => {
return str.charAt(0).toUpperCase() + str.slice(1) + '~~'
})

//全局過(guò)濾器-控制文本的最大長(zhǎng)度
Vue.filter('maxLength', (str, len = 10) => {
  if (str.length A len) return str
  return str.slice(0, len) +'…
}

過(guò)濾器的兼容性

過(guò)濾器僅在 vue 2.x 和 1.x 中受支持,在 vue 3.x 的版本中剔除了過(guò)濾器相關(guān)的功能。

在企業(yè)級(jí)項(xiàng)目開(kāi)發(fā)中:

? 如果使用的是 2.x 版本的 vue,則依然可以使用過(guò)濾器相關(guān)的功能

? 如果項(xiàng)目已經(jīng)升級(jí)到了 3.x 版本的 vue,官方建議使用計(jì)算屬性或方法代替被剔除的過(guò)濾器功能

具體的遷移指南,請(qǐng)參考 vue 3.x 的官方文檔給出的說(shuō)明:

https://v3.vuejs.org/guide/migration/filters.html#migration-strategy文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-701086.html

到了這里,關(guān)于如何在Vue中定義和調(diào)用過(guò)濾器?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • vue-過(guò)濾器

    vue-過(guò)濾器

    vue允許定義過(guò)濾器,對(duì)于一些文本常見(jiàn)格式化。過(guò)濾器可以用在兩個(gè)地方 -(1)v-bind 表達(dá)式 -(2){{}}插值表達(dá)式 使用:使用過(guò)濾器:{{ xxx | 過(guò)濾器名}} 或 v-bind:屬性 = \\\"xxx | 過(guò)濾器名\\\" 注冊(cè):Vue.filter(name,callback) 或 new Vue{filters:{}} ? (1)filters和methods配置方法是一樣的,在過(guò)濾

    2023年04月15日
    瀏覽(27)
  • Vue過(guò)濾器基本使用

    在Vue 2中,你可以使用 filters 選項(xiàng)來(lái)定義過(guò)濾器。以下在組件中定義和使用過(guò)濾器的簡(jiǎn)單例子: 1、app.vue 使用methods實(shí)現(xiàn): 2、使用filters配合computed計(jì)算屬性實(shí)現(xiàn): 3、引入其他組件FilterFix.vue實(shí)現(xiàn): app.vue FilterFix.vue main.js

    2024年02月09日
    瀏覽(97)
  • 【Vue】收集表單數(shù)據(jù) 過(guò)濾器

    【Vue】收集表單數(shù)據(jù) 過(guò)濾器

    收集表單數(shù)據(jù): 若: input type=\\\"text\\\"/ ,則v-model收集的是value值,用戶輸入的就是value值 若: input type=\\\"radio\\\"/ ,則v-model收集的是value值,且要給標(biāo)簽配置value值 若: input type=\\\"checkbox\\\"/ 1.沒(méi)有配置input的value屬性,那么收集的就是checked(勾選or未勾選,是布爾值) 2.配置input的value屬性:

    2023年04月18日
    瀏覽(20)
  • Vue3 之 過(guò)濾器

    過(guò)濾器本質(zhì)上是一個(gè)函數(shù),與自定義指令類似。 ????????全局過(guò)濾器 ?????局部過(guò)濾器 案例:將字符串首字母轉(zhuǎn)換為大寫(xiě)字母的全局過(guò)濾器 ?如果換成局部過(guò)濾器 ? 注意: 當(dāng)全局過(guò)濾器和局部過(guò)濾器重名,會(huì)采用局部過(guò)濾器 與自定義命令一樣,全局過(guò)濾器可以在任何

    2024年02月05日
    瀏覽(27)
  • VUE L 表單數(shù)據(jù)&過(guò)濾器 ⑨

    VUE L 表單數(shù)據(jù)&過(guò)濾器 ⑨

    提示:以下是本篇文章正文內(nèi)容 簡(jiǎn)介 : Vue 是一套用于構(gòu)建用戶界面的 漸進(jìn)式 框架。與其它大型框架不同的是,Vue 被設(shè)計(jì)為可以自底向上逐層應(yīng)用。Vue 的核心庫(kù)只關(guān)注視圖層,不僅易于上手,還便于與第三方庫(kù)或既有項(xiàng)目整合。另一方面,當(dāng)與現(xiàn)代化的工具鏈以及各種支

    2024年02月10日
    瀏覽(21)
  • Vue 中過(guò)濾器 filter 使用教程

    1.1 過(guò)濾器使用的背景 ?? 過(guò)濾器 提供給我們的一種 數(shù)據(jù)處理方式 。過(guò)濾器功能不是必須要使用的,因?yàn)樗鶎?shí)現(xiàn)的功能也能用 計(jì)算屬性 或者 函數(shù)調(diào)用 的方式來(lái)實(shí)現(xiàn)。 ??例如我們要在頁(yè)面顯示格式化的時(shí)間樣式,如圖所示:下面三種格式化的時(shí)間格式都是由 時(shí)間戳

    2024年02月07日
    瀏覽(26)
  • Vue過(guò)濾器(時(shí)間戳轉(zhuǎn)時(shí)間)

    Vue過(guò)濾器(時(shí)間戳轉(zhuǎn)時(shí)間)

    目錄 過(guò)濾器 ?HTML寫(xiě)法: 定義過(guò)濾器: ?定義全局過(guò)濾器: 過(guò)濾器串聯(lián): ?帶參數(shù)過(guò)濾器: 時(shí)間戳轉(zhuǎn)時(shí)間 官方地址:過(guò)濾器 — Vue.js (vuejs.org) 過(guò)濾器是指Vue.js支持在{{}}插值的尾部添加一個(gè)管道符“(|)”對(duì)數(shù)據(jù)進(jìn)行過(guò)濾, 經(jīng)常用于格式化文本,比如字母的大寫(xiě)、貨幣的千位

    2024年02月13日
    瀏覽(21)
  • Vue2中過(guò)濾器的用法詳解

    Vue2中過(guò)濾器的用法詳解

    目錄 一、過(guò)濾器的概念 二、過(guò)濾器的使用位置 三、過(guò)濾器的分類 1、全局過(guò)濾器 2、本地過(guò)濾器 四、過(guò)濾器應(yīng)用實(shí)例 1、使用過(guò)濾器實(shí)現(xiàn)省略號(hào) 2、使用過(guò)濾器處理時(shí)間戳 五、Vue3中已廢棄過(guò)濾器? 過(guò)濾器 是vue中的一個(gè)特性,作用是用于對(duì)文本進(jìn)行格式化的作用。分為全局過(guò)

    2024年02月07日
    瀏覽(16)
  • Vue.set()方法+收集表單數(shù)據(jù)+過(guò)濾器

    目錄 收集表單數(shù)據(jù) 過(guò)濾器 給對(duì)象追加一個(gè)屬性: Vue.set(對(duì)象,‘追加屬性名’ ,\\\'追加屬性值\\\') this.$set(對(duì)象,‘追加屬性名’ ,\\\'追加屬性值\\\') 注??:對(duì)象不能是vue實(shí)例,或者vue實(shí)例的根數(shù)據(jù)對(duì)象? ? 例子: 總結(jié): 若:input type=\\\'text\\\' /,則v-model收集的是value值,用戶輸入的就

    2024年02月05日
    瀏覽(23)
  • Spring-Cloud-Gateway如何自定義路由過(guò)濾器?

    遇到這么一個(gè)面試題:自定義網(wǎng)關(guān)過(guò)濾器實(shí)現(xiàn)把url中的請(qǐng)求參數(shù)放到http的header中傳遞給微服務(wù)。 我們知道網(wǎng)關(guān)的一個(gè)重要的作用就是路由轉(zhuǎn)發(fā),路由表的配置大概是這個(gè)樣子: 其中的filters就是配置的路由過(guò)濾器,Spring已經(jīng)內(nèi)置了31個(gè)路由的過(guò)濾器,這些過(guò)濾器都是 org.spring

    2024年02月16日
    瀏覽(24)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包