vue中過濾器filter的講解
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <div id="app"> <!-- {{}}中的|表示過濾器管道符,過濾器后面的為過濾函數(shù) --> <p>{{msg | msgFormat('瘋狂+1')}}</p> <!-- 多個(gè)過濾函數(shù)進(jìn)行調(diào)用 --> <p>{{msg | msgFormat('瘋狂+1') | test}}</p> <h2>{{time | dateFormat}}</h2> </div> </body> <script src="./js/vue.js"></script> <script> //過濾器的定義語法 //Vue.filter('過濾器的名稱',function () { }) //過濾器中的function,第一個(gè)參數(shù)data,已經(jīng)被規(guī)定死,永遠(yuǎn)都是過濾器管道符前面?zhèn)鬟f過來的數(shù)據(jù) // 從第二個(gè)參數(shù)開始就是傳值 // Vue.filter('過濾器名稱',function(data){ // return data+123 // }); //定義一個(gè)Vue全局的過濾器,名字:msgFormat Vue.filter('msgFormat',function(msg,param) { //字符出中的replace方法,第一個(gè)參數(shù),出了寫一個(gè)字符串之外,還可以定義一個(gè)正則 // return msg.replace('單純','邪惡'); // return msg.replace(/單純/g,'邪惡') return msg.replace(/單純/g,param) }) Vue.filter('test',function(msg) { return msg+'love' }) //如何定義一個(gè)私有過濾(局部) var vm = new Vue({ el: '#app', data: { msg: '我也是一個(gè)單純的少年,單純到自己很可愛,我也會(huì)喜歡你', time: new Date(), }, //定義私有過濾器,過濾器有兩個(gè)條件[過濾器名稱 和 處理函數(shù) ] filters: { /* 過濾器調(diào)用的時(shí)候,采用的是就近原則, 如果私有過濾器和全局過濾器名稱一致了,這時(shí)候優(yōu)先調(diào)用私有過濾器 */ //param = '';es6的初始化值 dateFormat: function(time,param = ''){ var dt = new Date(time); // yyyy-mm-dd var y = dt.getFullYear(); // var m = dt.getMonth()+1; var m = (dt.getMonth()+1).toString().padStart(2,'0'); var d = dt.getDate(); // return y+'-'+m+'-'+d; //模板字符串 // return `${y}-${m}-$vvxyksv9kd`; if(param.toLowerCase() === 'yyyy-mm-dd'){ return `${y}-${m}-$vvxyksv9kd`; }else{ var hh = dt.getHours(); var mm = (dt.getMinutes()).toString().padStart(2,'0'); var ss = dt.getSeconds(); return `${y}-${m}-$vvxyksv9kd ${hh}:${mm}:${ss}` } } }, methods: { } }) </script> </html> [點(diǎn)擊并拖拽以移動(dòng)]
效果圖
若有不足請(qǐng)多多指教!希望給您帶來幫助!
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
相關(guān)文章
vue 項(xiàng)目接口管理的實(shí)現(xiàn)
在vue開發(fā)中,會(huì)涉及到很多接口的處理,當(dāng)項(xiàng)目足夠大時(shí),就需要定義規(guī)范統(tǒng)一的接口,本文就來介紹一下vue 項(xiàng)目接口管理,具有一定的參考價(jià)值,感興趣的小伙伴可以一起來了解一下2019-01-01vue關(guān)于eslint空格縮進(jìn)等的報(bào)錯(cuò)問題及解決
這篇文章主要介紹了vue關(guān)于eslint空格縮進(jìn)等的報(bào)錯(cuò)問題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05vue中設(shè)置echarts寬度自適應(yīng)的代碼步驟
這篇文章主要介紹了vue中設(shè)置echarts寬度自適應(yīng)的問題及解決方案,常常需要做到echarts圖表的自適應(yīng),一般是根據(jù)頁面的寬度做對(duì)應(yīng)的適應(yīng),本文記錄一下設(shè)置echarts圖表的自適應(yīng)的步驟,需要的朋友可以參考下2022-09-09vue組件從開發(fā)到發(fā)布的實(shí)現(xiàn)步驟
這篇文章主要介紹了vue組件從開發(fā)到發(fā)布的實(shí)現(xiàn)步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11Vue計(jì)算屬性與監(jiān)視(偵聽)屬性的使用深度學(xué)習(xí)
這篇文章主要介紹了Vue計(jì)算屬性與監(jiān)視(偵聽)屬性的使用,計(jì)算屬性指的是通過一系列運(yùn)算之后,最終得到一個(gè)值,watch監(jiān)視(偵聽)器允許開發(fā)者監(jiān)視數(shù)據(jù)的變化,從而針對(duì)數(shù)據(jù)的變化做特定的操作,本文就這兩種屬性給大家詳細(xì)講解,感興趣的朋友一起學(xué)習(xí)吧2022-11-11vue項(xiàng)目打包之后生成一個(gè)可修改IP地址的文件(具體操作)
這篇文章主要介紹了vue項(xiàng)目打包之后生成一個(gè)可修改IP地址的文件(具體操作),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-03-03