日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

如何使用vue過濾器filter

瀏覽:27日期:2022-09-30 08:08:00
概述

在 vue2.0 之前,是有內(nèi)置過濾器的,在2.0中已經(jīng)沒有內(nèi)置的過濾器了,但我們可以自定義過濾器。

關(guān)于 vue 過濾器,在官方文檔中是這樣說明的:

Vue.js 允許你自定義過濾器,可被用于一些常見的文本格式化。過濾器可以用在兩個地方:雙花括號插值和 v-bind 表達式 (后者從 2.1.0+ 開始支持)。過濾器應(yīng)該被添加在 JavaScript 表達式的尾部,由“管道”符號指示。

即過濾器是用來格式化數(shù)據(jù)的一個函數(shù)。過濾器不會修改原始數(shù)據(jù),它的作用是過濾數(shù)據(jù),就是對數(shù)據(jù)進行加工處理并返回處理后的數(shù)據(jù),比如做一些數(shù)據(jù)格式上的修改,狀態(tài)轉(zhuǎn)換等。

過濾器分為兩種

組件內(nèi)的過濾器(組件內(nèi)有效) 全局過濾器(所有組件共享)定義過濾器

第一個參數(shù)是過濾器的名字

第二個參數(shù)是過濾器的功能函數(shù) (若不定義vue就不知道這個字符串是什么,有什么作用)。

過濾器的功能函數(shù)

聲明 function(data,argv1,argv2...){} 第一個參數(shù)是傳入的要過濾的數(shù)據(jù),即調(diào)用時管道符左邊的內(nèi)容。 第二個參數(shù)開始往后就是調(diào)用過濾器的時候傳入的參數(shù)。過濾器的使用

先注冊,后使用

組件內(nèi) filters:{ 過濾器名: fn } fn 內(nèi)通過 return 返回最終的數(shù)據(jù)

全局 Vue.filter(’過濾器名’,fn) fn 內(nèi)通過 return 返回最終的數(shù)據(jù)

使用 {{ 數(shù)據(jù) | 過濾器名 }}

// 使用過濾器時需要添加管道符號( | )作為分隔,管道符 | 右邊是過濾器名稱,即文本的功能函數(shù)​<!-- 在雙花括號中 -->{{ message | 過濾器名稱 }}​<!-- 在 `v-bind` 中 --><div v-bind:id='id | 過濾器名稱'></div>自定義全局過濾器

Vue.filter(’過濾器名稱’, function(val) { // val表示要被處理的數(shù)據(jù) // 過濾器業(yè)務(wù)邏輯,要有返回值})​<div>{{ msg | 過濾器名稱 }}</div><div v-bind='msg | 過濾器名稱'></div>局部過濾器

data () { return {msg: ’hello world’ }},//定義私用局部過濾器。只能在當(dāng)前 vue 對象中使用filters: { dataFormat: (msg, a) => { // msg表示要過濾的數(shù)據(jù),a表示傳入的參數(shù)return msg + a; }}​<p>{{ msg | dataFormat(’!’)}}</p> // 結(jié)果: hello world!注意事項

1.全局注冊時是 filter 沒有 s , 而組件過濾器是 filters,是有 s 的,雖然寫的時候沒有 s 也不報錯,但是過濾器是沒有效果的。

2.當(dāng)全局過濾器和局部過濾器名字重復(fù)的時候,會以就近原則進行調(diào)用,即:局部過濾器優(yōu)先于全局過濾器被調(diào)用

3.一個表達式可以使用多個過濾器,其執(zhí)行順序從左往右,前一個過濾器的結(jié)果作為后一個過濾器的被處理數(shù)據(jù),所以要注意使用順序

熟悉 vue 的童鞋會知道,過濾器有時同methods、computed、watch一樣可以達到處理數(shù)據(jù)的目的,但又不能替代它們,因為它不能改變原始值。如果一個過濾器的內(nèi)部特別復(fù)雜,可以考慮把它寫成一個計算屬性,因為計算屬性本身帶有緩存,可復(fù)用性強,而過濾器一般用來做一些簡單的操作。

在實際開發(fā)中,全局的過濾器要比局部過濾器使用的更廣泛一些,說白了我們?yōu)槭裁匆褂眠^濾器,其實就跟使用函數(shù)是一樣,把一些方法封裝,供其它組件使用,這樣調(diào)用起來更方便也更快捷。

大家知道全局過濾器是在 main.js 中定義的,但萬一項目過大,有多個過濾器,那 main.js 就一堆代碼,為了項目模塊化,最好是有專門的目錄來統(tǒng)一存放這些過濾器,然后把處理函數(shù)給抽離出去,放在一個.js文件中,下邊通過示例代碼展示。

示例一(局部過濾器)

格式化時間或日期,補全指定位數(shù),不足個位數(shù)補0

// filter/index.js文件export default { dateFormat: value => {const dt = new Date(value * 1000) const y = dt.getFullYear()const m = (dt.getMonth() + 1 + ’’).padStart(2, ’0’) // .padStart(指定位數(shù),'要補全的符號或值')const d = (dt.getDay() + ’’).padStart(2, ’0’)const hh = (dt.getHours() + ’’).padStart(2, ’0’)const mm = (dt.getMinutes() + ’’).padStart(2, ’0’)const ss = (dt.getSeconds() + ’’).padStart(2, ’0’)return `${y}-${m}-$egas0ac ${hh}:${mm}:${ss}` }}​// 在 .vue 文件中使用局部過濾器<script> import filters from ’../filter’​ export default {... ... filters: { ...filters },data() { return {}} }</script>​<div> 日期:{{ date | dateFormat }} </div>示例二(全局過濾器)

通用字典項的回顯:比如性別男女或通用選擇是否,后端傳給我們的數(shù)據(jù)是0、1,我們需要在頁面上顯示男女或是否

// constants/dictionary.js 文件​export const GENDER_MENU = [ { code: 0, label: ’男’}, { code: 1, label: ’女’}];​export const COMMON_MENU = [ { code: 0, label: ’否’}, { code: 1, label: ’是’}];​export default { GENDER_MENU, COMMON_MENU}

filter / dict.js 文件

// filter/dict.js 文件​import Dict from ’../constants/dictionary’​export const genderMenu = { func: value => {const target = Dict.GENDER_MENU.filter(item => { return item.code = value;})return target.length ? target[0].label : value; }}​export const commonMenu = { func: value => {const target = Dict.COMMON_MENU.filter(item => { return item.code = value;})return target.length ? target[0].label : value; }}

filter / index.js 文件

// filter/index.js 文件​import * as filters from ’./dict’ // 導(dǎo)入過濾函數(shù)​const Install = Vue => { // 導(dǎo)入的 filters 是一個對象,使用Object.keys()方法,得到一個由key組成的數(shù)組,遍歷數(shù)據(jù),讓key作為全局過濾器的名字,后邊的是key對應(yīng)的處理函數(shù),這樣在任何一個組件中都可以使用全局過濾器了 Object.keys(filters).forEach(key => {Vue.filter(key, filters[key].func) }) /* for(const _filter in filters) {Vue.filter(`${_filter}`, filters[_filter].func) } */}​export default Install

main.js 文件

// main.js 文件​... ...import filters from ’./../filter/index’Vue.use(filters)... ...

在.vue 文件中使用全局過濾器

// .vue 文件中使用全局過濾器​<p>性別:{{ gender | genderMenu }}</p>

以上就是如何使用vue過濾器filter的詳細(xì)內(nèi)容,更多關(guān)于vue過濾器filter的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Vue
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品国产偷自在线观看| 国产在线视频欧美一区| 久久久精品五月天| 99久久婷婷| 亚洲视频www| 日韩精品一二三四| 亚洲精品国产日韩| 久久99蜜桃| 成人日韩在线观看| 合欧美一区二区三区| 黑丝一区二区| 97久久超碰| 大香伊人久久精品一区二区| 久久蜜桃资源一区二区老牛| 一区二区亚洲精品| 婷婷综合一区| 久久97视频| 999精品色在线播放| 国产农村妇女精品一二区| 亚洲精品欧美| 成人台湾亚洲精品一区二区| 美女网站一区| 日韩精品一级| 成人污污视频| 久久最新视频| 国产精品传媒麻豆hd| 久久久久国产一区二区| 免费久久精品视频| 国产精品久久久久9999高清| 中文在线а√在线8| 国产亚洲毛片在线| 国产精品久久久久久久久久白浆 | 福利片在线一区二区| 激情婷婷欧美| 欧美亚洲tv| 激情偷拍久久| 国产色噜噜噜91在线精品| 亚洲一级少妇| 亚久久调教视频| 中文字幕在线官网| 亚洲三级网站| 亚洲精品一区三区三区在线观看| 亚洲毛片一区| 久久伦理在线| 国产精品a级| 丝袜美腿亚洲色图| 成人亚洲欧美| 欧美日韩一区二区高清| 欧美午夜精品一区二区三区电影| 欧美日韩在线精品一区二区三区激情综合| av资源亚洲| 国产精品亚洲欧美日韩一区在线| 欧美国产91| 日本一区二区高清不卡| 日韩极品在线观看| 一区福利视频| 快播电影网址老女人久久| 国产精品自在| 亚洲影院天堂中文av色| 91精品婷婷色在线观看| 开心激情综合| 日韩国产在线观看| 女主播福利一区| 亚洲黄色网址| 精品中文在线| 国产欧美日韩一级| 亚洲一区二区小说| 国产视频一区三区| 视频在线不卡免费观看| 久久av网址| 国产亚洲久久| 日本aⅴ亚洲精品中文乱码| 中文无码久久精品| 日韩在线卡一卡二| 国产亚洲精品自拍| 亚洲深夜福利| 亚洲欧美日韩视频二区| 婷婷激情综合| 亚洲成人精选| 1024精品久久久久久久久| 久久精品免费一区二区三区| 欧美aa一级| 欧美日韩一二三四| 国产精品亚洲一区二区三区在线观看| 美女毛片一区二区三区四区最新中文字幕亚洲| 综合激情网站| 亚洲欧美网站在线观看| 亚洲人成网77777色在线播放| 国产精品日本欧美一区二区三区| 91精品电影| av不卡在线看| 久久高清免费观看| 日韩中文字幕区一区有砖一区| 一本色道久久精品| 亚洲欧美日韩在线观看a三区| 欧美美女一区| 国产精品毛片在线| 亚洲香蕉视频| 日韩专区欧美专区| 日本不卡不码高清免费观看| 97久久精品| 免费亚洲一区| 在线天堂资源www在线污| 成人日韩在线观看| 1024精品一区二区三区| 欧美日韩视频| 亚洲一区av| 日本欧美韩国一区三区| 国产欧美一区二区色老头| 麻豆91精品91久久久的内涵| 成人三级高清视频在线看| 精品欧美一区二区三区在线观看| 日本精品影院| 亚洲精品一二三区区别| 中文字幕av一区二区三区人| 国产欧美久久一区二区三区| 精品久久一区| 欧美va天堂在线| 日本在线成人| 精品国产乱码久久久久久1区2匹| 色婷婷久久久| 一区二区国产在线| 国产精品久久久久久久久久久久久久久 | 国产va在线视频| 久久天堂成人| 亚洲精品护士| 久久久免费人体| 久久一区二区三区喷水| 日韩亚洲精品在线观看| 日产精品一区二区| 久久午夜精品一区二区| 欧美国产先锋| 亚洲精品网址| 国产日韩免费| 宅男在线一区| 国产精品久久国产愉拍| 欧美午夜精彩| 欧美在线精品一区| 亚洲黄色中文字幕| 只有精品亚洲| 日韩欧美一区二区三区在线观看 | 久久精品三级| 久久午夜精品| 福利一区二区免费视频| 麻豆久久精品| 中文字幕人成乱码在线观看 | 国产日韩欧美在线播放不卡| 欧美日韩尤物久久| 日韩精品视频中文字幕| 精品日韩视频| 国产欧美一区二区三区国产幕精品| 夜鲁夜鲁夜鲁视频在线播放| 亚洲一区日韩| 裤袜国产欧美精品一区| 日韩在线观看中文字幕| 日韩免费小视频| 国产午夜久久av| 99xxxx成人网| 福利一区和二区| 欧美一区=区三区| 久久精品国语| 久久精品国产精品亚洲毛片| 一本色道久久精品| 91麻豆国产自产在线观看亚洲| 热久久免费视频| 欧美三级网址| 美女免费视频一区| 日韩三区四区| 先锋影音久久久| 群体交乱之放荡娇妻一区二区| 国产日韩免费| 少妇精品久久久一区二区| 在线视频观看日韩| 欧美激情另类| 麻豆91精品91久久久的内涵| 在线观看一区| 黄色成人在线网址| 日韩免费高清| 国产麻豆一区二区三区| 四虎在线精品| 伊人久久大香伊蕉在人线观看热v| 欧美成人基地 | 欧美视频二区| 亚州欧美在线| 日韩影院免费视频| 亚洲激情另类| 亚洲国产一区二区三区在线播放| 四虎国产精品免费观看| 国产欧美亚洲精品a| 亚洲v天堂v手机在线| 久久aⅴ国产紧身牛仔裤| 欧美理论视频| 国产精品99一区二区| 久久国产日韩| 日韩专区精品| 亚洲伊人av| av亚洲一区二区三区| 日韩一区电影| 中文字幕人成乱码在线观看| 久久男人av资源站|