美文网首页
vue自定义过滤器

vue自定义过滤器

作者: 爱鸽子的玉米君 | 来源:发表于2016-11-22 09:49 被阅读935次

Vue的自定义过滤器有两种:全局过滤器和内部过滤器
全局过滤器定义在vue实例化之前

模板内容
<div class="test">
    <p>{{message | sum}}</p>
    <!--过滤器函数始终以表达式的值作为第一个参数。带引号的参数视为字符串,而不带引号的参数按表达式计算。-->
    <p>{{message | cal 10 20}}</p>  
     <!--添加两个过滤器,注意不要冲突-->
    <p>{{message | sum | currency }}</p>
    <!--用户从input输入的数据在回传到model之前也可以先处理,此处使用的是vue提供的双向过滤器,针对input-->
    <input type="text" v-model="message | change"> 
</div>
//全局方法 Vue.filter() 注册一个自定义过滤器
Vue.filter("sum", function(value) {   
    return value + 4;
});

Vue.filter('cal', function (value, begin, xing) {   
    return value + begin + xing;
});

Vue.filter("change", {
    // model -> view 在更新 `<input>` 元素之前格式化值
    read: function (value) { 
        return value;
    },
    // view -> model  在写回数据之前格式化值
    write: function (newVal,oldVal) {
        console.log("newVal:"+newVal); 
        console.log("oldVal:"+oldVal);
        return newVal;
    }
});

var myVue = new Vue({
    el: ".test",
    data: {
        message:12
    }
})

内部过滤器注册在实例内部,仅在注册它的实例里可用

<div class="test">
       <p>{{message | sum}}</p>
       <!--过滤器函数始终以表达式的值作为第一个参数。带引号的参数视为字符串,而不带引号的参数按表达式计算。-->
       <p>{{message | cal 10 20}}</p>  
       <!--添加两个过滤器,注意对数据的操作不要冲突-->
       <p>{{message | sum | currency }}</p> 
       <!--用户从input输入的数据在回传到model之前也可以先处理-->      
       <input type="text" v-model="message | change"> 
</div>
Vue.filter("change", {
    read: function (value) { 
        // model -> view 在更新 `<input>` 元素之前格式化值
        return value;
    },
    write: function (newVal,oldVal) { 
        // view -> model  在写回数据之前格式化值
        console.log("newVal:"+newVal); 
        console.log("oldVal:"+oldVal);
        return newVal;
    }
});

var myVue = new Vue({
    el: ".test",
    data: {
        message:12
    },
    filters: {
        sum: function (value) {
            return value + 4;
        },
        cal: function (value, begin, xing) {
            return value + begin + xing;
        }
    }
})   

相关文章

  • vue filter 过滤器使用

    格式化时间 自定义全局过滤器 vue 自定义过滤器分为"全局过滤器"和"局部过滤器"两种。 一、 全局过滤器 全局...

  • Vue过滤器

    vue2.0取消了自带的过滤器,只能自定义过滤器

  • Vue过滤器和vue-resource

    过滤器 之前我们学习了Vue的 vue基本指令 进阶学习,我们需要了解Vue的过滤器:Vue.js允许你自定义过滤...

  • vue自定义过滤器

    Vue的自定义过滤器有两种:全局过滤器和内部过滤器全局过滤器定义在vue实例化之前 内部过滤器注册在实例内部,仅在...

  • vue过滤器

    1.过滤器的写法 2.Vue1自带的过滤器 3.自定义过滤器

  • VUE02

    v-cloak ref monted Vue.directive()自定义指令 }) Vue.filter过滤器 ...

  • vue常用特性应用场景

    1 过滤器 Vue.filter 定义一个全局过滤器 2 自定义指令 让表单自动获取焦点 通过Vue.direc...

  • VUE初级入门实践

    VUE概述 生命周期 指令 内置指令 自定义指令 过滤器 内置过滤器 VUE1.0版本 VUE2.0版本(无内置过...

  • vue学习大纲3-过滤器、指令、动画

    自定义过滤器: 在vue1.0中有过滤器,比如: 在vue2.0中所有的内置过滤器都被销毁了,2.0推荐我们自己写...

  • Web前端-Vue.js必备框架(二)

    Web前端-Vue.js必备框架(二) vue调式工具vue-devtools 过滤器:vue.js允许你自定义过...

网友评论

      本文标题:vue自定义过滤器

      本文链接:https://www.haomeiwen.com/subject/kbsppttx.html