zoukankan      html  css  js  c++  java
  • VUE课程---20、过滤器

    VUE课程---20、过滤器

    一、总结

    一句话总结:

    vue的过滤器有全局过滤器和私有过滤器,过滤器可以过滤一些敏感词汇,也能对时间格式进行过滤。

    1、vue全局过滤器和私有过滤器?

    全局过滤器是对所有vue实例都有效的过滤器,语法 Vue.filter(过滤器名称,回调函数)
    私有过滤器只对当前vue实例有效,语法filters:{ 过滤器函数 }
    <div id="app">
        <!--过滤器可带参数-->
        <!--过滤器可串联-->
        <p>{{msg | msgFormat('-','*') | msgFormat1 | msgFormat2}}</p>
    </div>
    
    <script src="../js/vue.js"></script>
    <script>
        //全局过滤器
        Vue.filter('msgFormat',function (msg,arg,arg2) {
            return msg.replace(//g,arg+arg2);
        });
    
        Vue.filter('msgFormat1',function (msg) {
            return msg+'============';
        });
    
        let vm = new Vue({
            el: '#app',
            data: {
                msg: '我怀疑你在开车,而且车速很快,但是我没有证据'
            },
            filters:{//定义私有过滤器
                msgFormat2:function (msg) {
                    return msg+'++++';
                }
            }
        });
    
    </script>

    2、过滤器使用语法?

    {{ 要过滤的字符 | 过滤器 }}:{{msg | msgFormat('-','*') | msgFormat1 }}

    3、过滤器使用注意?

    1、过滤器可带参数,例如:{{msg | msgFormat('-','*') | msgFormat1 }}
    2、过滤器可串联,例如:{{msg | msgFormat('-','*') | msgFormat1 }}

    4、过滤器使用场景?

    比如过滤一些敏感词汇,比如对日期格式串进行处理

    二、过滤器

    博客对应课程的视频位置:

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>过滤器</title>
     6 </head>
     7 <body>
     8 <!--
     9 
    10 
    11 过滤器使用语法
    12 {{ 要过滤的字符 | 过滤器 }}
    13 
    14 全局过滤器
    15 Vue.filter(过滤器名称,回调函数);
    16 
    17 私有过滤器
    18 filters:{ 过滤器函数 }
    19 
    20 过滤器使用注意
    21 1、过滤器可带参数,例如:{{msg | msgFormat('-','*') | msgFormat1 }}
    22 2、过滤器可串联,例如:{{msg | msgFormat('-','*') | msgFormat1 }}
    23 
    24 
    25 过滤器使用场景
    26 比如过滤一些敏感词汇,比如对日期格式串进行处理
    27 
    28 -->
    29 <div id="app">
    30     <!--过滤器可带参数-->
    31     <!--过滤器可串联-->
    32     <p>{{msg | msgFormat('-','*') | msgFormat1 | msgFormat2}}</p>
    33 </div>
    34 
    35 <div id="app2">
    36     <p>{{msg | msgFormat('-','*') | msgFormat1 }}</p>
    37 </div>
    38 <script src="../js/vue.js"></script>
    39 <script>
    40     //全局过滤器
    41     Vue.filter('msgFormat',function (msg,arg,arg2) {
    42         return msg.replace(//g,arg+arg2);
    43     });
    44 
    45     Vue.filter('msgFormat1',function (msg) {
    46         return msg+'============';
    47     });
    48 
    49     let vm = new Vue({
    50         el: '#app',
    51         data: {
    52             msg: '我怀疑你在开车,而且车速很快,但是我没有证据'
    53         },
    54         filters:{//定义私有过滤器
    55             msgFormat2:function (msg) {
    56                 return msg+'++++';
    57             }
    58         }
    59     });
    60 
    61     let vm2 = new Vue({
    62         el: '#app2',
    63         data: {
    64             msg: '我怀疑你在开车,而且车速很快,但是我没有证据'
    65         }
    66     });
    67 
    68 
    69 </script>
    70 </body>
    71 </html>

     
  • 相关阅读:
    玛利亚∙多斯普拉泽雷斯
    八月惊魂
    电话
    占梦人
    睡美人
    [可并堆] Bzoj P4585 烟火表演
    [三分套三分] Codeforces NEERC 13 E. Easy Geometry
    [可并堆] Bzoj P1367 sequence
    [dp][组合数] Jzoj P6303 演员
    [树形dp][Tarjan][单调队列] Bzoj 1023 cactus仙人掌图
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12745067.html
Copyright © 2011-2022 走看看