本文主要為大家詳細介紹了vue自訂過濾器創建和使用方法,具有一定的參考價值,有興趣的小伙伴們可以參考一下,希望能幫助到大家。
過濾器:生活中有很多例子,淨水器 空氣清淨機 。
過濾器的作用:實現資料的篩選、過濾、格式化。
vue1.*版本是有內建的過濾器,但是在vue2.*所有的版本都已經沒有自帶的過濾器了。
1、過濾器建立
過濾器的本質 是一個有參數有回傳值的方法
new Vue({ filters:{ myCurrency:function(myInput){ return 处理后的数据 } } })
2、過濾器使用
語法:
#舉個範例:
3、濾鏡高階用法
在使用濾鏡的時候,也可以指定參數,來告訴過濾器依照參數進行資料的過濾。
①如何傳參給濾鏡?
{{price | myCurrency('¥',true)}}
②如何在過濾器中接收到?
new Vue({ filters:{ //myInput是通过管道传来的数据 //arg1在调用过滤器时在圆括号中第一个参数 //arg2在调用过滤器时在圆括号中第二个参数 myCurrency:function(myInput,arg1,arg2){ return 处理后的数据 } } })
程式碼:
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <script src="js/vue.js"></script> <title></title> </head> <body> <p id="container"> <p>{{msg}}</p> <h1>{{price}}</h1> <h1>{{price | myCurrency('¥')}}</h1> </p> <script> // filter new Vue({ el: '#container', data: { msg: 'Hello Vue', price:356 }, //过滤器的本质 就是一个有参数有返回值的方法 filters:{ myCurrency:function(myInput,arg1){ console.log(arg1); //根据业务需要,对传来的数据进行处理 // 并返回处理后的结果 var result = arg1+myInput; return result; } } }) </script> </body> </html>
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <script src="js/vue.js"></script> <title></title> </head> <body> <p id="container"> <p>{{msg}}</p> <h1>{{name | myTextTransform(false)}}</h1> </p> <script> new Vue({ el: '#container', data: { msg: 'Hello Vue', name:'Michael' }, filters:{ myTextTransform: function (myInput,isUpper) { if(isUpper) { return myInput.toUpperCase(); } else{ return myInput.toLowerCase(); } } } }) </script> </body> </html>
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>过滤器</title> <script src="js/vue.js"></script> </head> <body> <p id="container"> <p>{{msg}}</p> <h1>{{price}}</h1> <h1>{{price|myCurrency}}</h1> </p> <script> new Vue({ el:"#container", data:{ msg:"Hello VueJs", price:356 }, //过滤器的本质 就是一个有参数有返回值的方法 filters:{ myCurrency:function(myInput){ var result = "$"+myInput; return result; } } }) </script> </body> </html>
最後一個例子是寫死的。
相關推薦:
JavaWeb Servlet中關於Filter過濾器的實例分析
以上是實例詳解vue自訂篩選器建立和使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!