• vue事件 以及 filters函数


    0809 课堂笔记 Vue
     
    1、事件修改符
                .stop:用于阻止冒泡
                .prevent:取消默认事件。
     
    过滤器   filters  函数
    实例1:     
                <div>{{time | date }</div>
                filters :{
        //定义了一个局部过滤器  (注册过滤器)    
        //接收的第一个参数即是你要最终过滤的内容
                    currency(v){
                //过滤返回的内容就是你要过滤的内容    
                    return ——
            }
        }
     
    实例2:
    <div id="myApp">
        {{price | currency}}
        <p>{{a | currency(3)}}</p>
        <p>{{b | currency(4)}}</p>
    </div>
    </body>
    <script>
        new Vue({
            el:"#myApp",
            data:{
                price:1,
                a:2,
                b:3
            },
            filters:{
                // 第一个参数是你要过滤的值,后面的参数是你接收的参数
                currency(v,n=2){
                    console.log(v,n)
                    return "$"+v.toFixed(n);
                }
            }
        })
    </script>
     
     
    外部引入局部过滤器
    <div id="myApp">
        <p>价格:{{price | currency}}</p>
        <p>时间:{{time | date}}</p>
    </div>
    </body>
    <script>
        new Vue({
            el:"#myApp",
            data:{
                price:12.456,
                time:Date.now()
            },
            filters
      //      filters:filters
             filters:{
                currency(v,n=2){
                    return "$"+v.toFixed(n);
               },
                 date(v){
                     const time = new Date(v);
                    return time.getFullYear()+"-"+
                         (time.getMonth()+1).toString().padStart(2,"0")+"-"+
                        (time.getDate()).toString().padStart(2,"0")+" "+
                        (time.getHours()).toString().padStart(2,"0")+":"+
                         (time.getMinutes()).toString().padStart(2,"0")+":"+
                         (time.getSeconds()).toString().padStart(2,"0");
                }
            }
        
     
     
     
     
    全局过滤器
    <body>
    <div id="one">
        <p>价格:{{price | currency}}</p>
        <p>时间:{{time | date}}</p>
    </div>
    <hr>
    <div id="two">
        <p>价格:{{price | currency(3)}}</p>
        <p>时间:{{time | date}}</p>
    </div>
    </body>
    <script>
        // 全局过滤器定义,filter第一个参数是过滤器的名字,
        // 第二个参数是一个方法(第一个参数是你要过滤的数据,后面的参数是你接收的值)
        Vue.filter("currency",function (v,n=2) {
            return v.toFixed(n);
        })
        Vue.filter("date",function (v) {
            const time = new Date(v);
            return time.getFullYear()+"-"+
                (time.getMonth()+1).toString().padStart(2,"0")+"-"+
                (time.getDate()).toString().padStart(2,"0")+" "+
                (time.getHours()).toString().padStart(2,"0")+":"+
                (time.getMinutes()).toString().padStart(2,"0")+":"+
                (time.getSeconds()).toString().padStart(2,"0");
        })
        new Vue({
            el:"#one",
            data:{
                price:100000,
                time:Date.now()
            }
        })
        new Vue({
            el:"#two",
            data:{
                price:20000,
                time:Date.now()
            }
        })
    </script>
     
     
    外部引入全局追踪器
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <script src="lib/vue.js"></script>
        <script src="lib/vue-filters.js"></script>
    </head>
    <body>
    <div id="one">
        <p>价格:{{price | currency}}</p>
        <p>时间:{{time | date}}</p>
    </div>
    <hr>
    <div id="two">
        <p>价格:{{price | currency(3)}}</p>
        <p>时间:{{time | date}}</p>
    </div>
    </body>
    <script>
        for(let  key in filters){
            // key filters[key]
            Vue.filter(key,filters[key]);
        }
        new Vue({
            el:"#one",
            data:{
                price:100000,
                time:Date.now()
            }
        })
        new Vue({
            el:"#two",
            data:{
                price:20000,
                time:Date.now()
            }
        })
    </script>
     
    外部封装引入:
    let filters = {
        currency(v,n=2){
            return "$"+v.toFixed(n);
        },
        date(v){
            const time = new Date(v);
            return time.getFullYear()+"-"+
                (time.getMonth()+1).toString().padStart(2,"0")+"-"+
                (time.getDate()).toString().padStart(2,"0")+" "+
                (time.getHours()).toString().padStart(2,"0")+":"+
                (time.getMinutes()).toString().padStart(2,"0")+":"+
                (time.getSeconds()).toString().padStart(2,"0");
        }
    }
     
  • 相关阅读:
    asp.net实现页面的一般处理程序(CGI)学习笔记
    .NET下的状态(State)模式 行为型模式
    (插件Plugin)AssemblyLoader解决方案(插件开发)
    SQL基础编写基本的SQL SELECT 语句
    在查询语句中使用NOLOCK和READPAST(ZT)
    C# 3.0语言增强学习笔记(一)
    ram,rom,flash
    自动激活你的ActiveX控件
    用C#编写ActiveX控件(二)
    用C#编写ActiveX控件(一)
  • 原文地址:https://www.cnblogs.com/wangwenxin123/p/11409866.html
Copyright © 2020-2023  润新知