Vue.js的过滤器怎么使用
短信预约 -IT技能 免费直播动态提醒
这篇文章主要介绍了Vue.js的过滤器怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue.js的过滤器怎么使用文章都会有所收获,下面我们一起来看看吧。
一、过滤器作用
过滤器用于进行文本内容格式化处理。
二、过滤器的使用方式
过滤器可以在插值表达式和 v-bind 中使用。
三、过滤器的分类
全局过滤器
局部过滤器
四、全局过滤器
全局过滤器可以在任意Vue实例中使用。
语法书写方式如下:
Vue.filter('过滤器名称',function(value) { //逻辑代码 return '处理结果';})
注意:示例中的 | 竖线表示管道符。
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>15.全局过滤器</title></head><body> <div id="app"> <p v-bind:title="value | filterA">这是标签</p> <p>{{ value | filterA }}</p> </div> <div id="app2"> <p v-bind:title="value | filterA">这是标签</p> <p>{{ value | filter}}</p> </div> <script class="lazy" data-src="../01.vue.js入门/js/vue-2.6.14.js"></script> <script> Vue.filter('filterA',function (value) { return value.split('-').join(''); }) new Vue({ el: '#app', data: { value: 'a-b-c' } }) new Vue({ el: '#app2', data: { value: 'a-b-c' } }) </script></body></html>
• 全局过滤器可以将一个数据传入到多个过滤器中进行处理。
<body> <div id="app"> <p>{{ value | filterA | filterB }}</p> </div> <script class="lazy" data-src="../01.vue.js入门/js/vue-2.6.14.js"></script> <script> Vue.filter('filterA',function (value){ console.log(value + ' filterA'); return value.split('-').join(''); }) Vue.filter('filterB',function (value) { console.log(value + ' filterB'); return value[0].toUpperCase() + value.slice(1); }) new Vue({ el: '#app', data: { value: 'a-b-c' } }) </script></body>
• 一个过滤器可以传入多个参数。
<body> <div id="app"> <!-- 注意:参数1永远是管道符左边的value --> <p>{{ value | filterC('TGW—',200)}}</p> </div> <script class="lazy" data-src="../01.vue.js入门/js/vue-2.6.14.js"></script> <script> Vue.filter('filterC', function(par1,par2,par3) { console.log(par1,par2,par3); return par2 + par1.split('-').join(''); }); new Vue({ el: '#app', data: { value: 'a-b-c' } }) </script></body>
五、局部过滤器
• 局部过滤器只能在当前 Vue 实例中使用。其他的Vue实例中无法访问。
<div id="app"> <p>{{ content | filterA }}</p> <p>{{ content2 | filterA }}</p> <p>{{ content | filterA | filterB }}</p> <p>{{ content | filterA | filterC('TGW—')}}</p> </div> <!-- <div id="app2"> <p>{{ content | filterA }}</p> </div> --> <script class="lazy" data-src="../01.vue.js入门/js/vue-2.6.14.js"></script> <script> new Vue({ el: '#app', data: { content: 'a-b-c', content2: 'd-e-f' }, filters: { filterA: function (value){ console.log(value); return value.split('-').join('') }, filterB: function (value) { return value.split('').reverse().join('') }, filterC (value,prefix) { return prefix + value; } } }) // new Vue({ // el: '#app2', // data: { // content: 'g-h-i' // } // }) </script></body>
六、全局过滤器和局部过滤器重名现象
当我们出现全局过滤器和局部过滤器名字一样时,那么我们再执行的时候,是按照就近原则进行执行的,所以执行的是局部过滤器的代码块。
<body> <div id="app"> <p>{{ content | filterA }}</p> </div> <script class="lazy" data-src="../01.vue.js入门/js/vue-2.6.14.js"></script> <script> Vue.filter('filterA', function (value){ return value.split('').reverse().join('') }) new Vue({ el: '#app', data: { content: 'a-b-c' }, filters: { filterA (value) { return value.split('-').join('') } } }) </script></body>
关于“Vue.js的过滤器怎么使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Vue.js的过滤器怎么使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341