Vue学习(7)过滤器

全局过滤器 + 局部过滤器

<!--
 * @Author: your name
 * @Date: 2020-04-01 16:31:40
 * @LastEditTime: 2020-04-01 16:47:51
 * @LastEditors: Please set LastEditors
 * @Description: 过滤器
 * @FilePath: \x\10.html
 -->
<!-- Vue 数据驱动视图 -->
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>

</head>

<body>
    <div id="app"></div>
    <script type="text/javascript" src="./node_modules/vue/dist/vue.js"></script>
    <script type="text/javascript">
        // 过滤器的作用:为页面中的数据进行增加的功能
        // 局部过滤器 + 全局过滤器
        /* 
        1.声明过滤器
        2.{{数据 | 过滤器名字}}        
        */

        // 全局过滤器
        Vue.filter('myReverse', function(value, arg) {
            return arg + value.split('').reverse().join('')
        })
        
        var App = {
            data() {
                return {
                    price: 0,
                    msg: 'hello filter'
                }
            },
            methods: {},
            components: {
            },
            template: '\
            <div>\
                <input type="number" v-model="price"/>\
                <h3>{{price | myCurrentcy}}</h3>\
                <h4>{{msg | myReverse("djhfkajshd")}}</h4>\
            </div>',
            // 局部过滤器
            filters: {
                // 1.声明过滤器
                myCurrentcy: function(value) {
                    return '$' + value;
                }
            }
        };
        console.log(App)
        var vm = new Vue({
            el: "#app",
            data() {
                return {

                }
            },
            // 挂载子组件
            components: {
                App
            },
            // 父组件可以直接使用
            template: '\
                <App></App>\
            '
        });
        console.log(vm)
    </script>
</body>

</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章