java中的接口是类吗
245
2023-05-11
详解Vue2.0里过滤器容易踩到的坑
vue2.0里,不再有自带的过滤器,需要自己定义过滤器。定义的方法如下:
注册一个自定义过滤器,它接收两个参数:过滤器 ID 和过滤器函数。
Vue.filter('filtername',function(value,参数){
return 参数+value.split('').reverse().join('');
});
function里第一个参数value默认为使用这个过滤器的data对象内的值,在本例中是msg的值'you are mine'。
坑1:第一个参数必须为自身的值,后面可以加任意多的参数。数序颠倒就会出错。
下面来一个最常见的小例子来说明在使用vue2.0过滤器并结合v-text时遇到的其他的几个坑:
需求:在页面输出一段反转顺序的字符串。
完整代码如下:
window.onload=function(){
//类似于自定义指令,可以用全局方法 Vue.filter() 注册一个自定义过滤器,它接收两个参数:过滤器 ID 和过滤器函数。
Vue.filter('reverseString',function(value,myString){
// function里第一个参数value默认为使用这个过滤器的data值,在本例中是msg的值'you are mine'。请注意:第一个参数必须为自身的值,后面可以加任意多的参数
return myString+value.split('').reverse().join('');
});
new Vue({
el:'#box',
data:{
msg:'you are mine'
}
});
};
msg is:
{{msg}}
reverse msg is:
{{msg|reverseString( 'Hello:' )}}
输出结果为:
msg is:
you are mine
reverse msg is:
Hello:enim era uoy
坑2:在vue2.0里 过滤器只能用类似函数的写法reverseString( ‘I must tell you:'),括号内是参数,不同于vue1.0的用空格后加参数的写法;
坑3:v-text里用过滤器失效,原因是在vue2.0里 管道符‘|'只能用在mousetache和v-bind中。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~