Vue学习之过滤器的使用

Vue学习之过滤器的使用Vue学习之过滤器的使用

大家好,又见面了,我是你们的朋友全栈君。

过滤器

概念:
Vue.js 允许你自定义过滤器,可被用作一些常见的文本格式化。过滤器可以用在两个地方:mustache 插值和 v-bind 表达式。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符指示(” | “);

分类:过滤器分为全局过滤器和局部过滤器(私有过滤器)

全局过滤器

我们先通过案例来介绍下过滤器的使用,然后再看下何为全局过滤器
过滤器的语法

// 声明过滤器
Vue.filter("过滤器名称","回调函数")

1.简单过滤器的使用

我们先来看下过滤器的简单使用,如下是没有使用过滤器的情况

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="./lib/vue-2.4.0.js"></script>
</head>
<body>
    <div id="app">
        <p>{
  
  {msg}}</p>
    </div>
    <script>
        
        var vm = new Vue({
            el: "#app",
            data: {
                msg:"今日NBA,保罗换威少,哈哈...NBA新闻真多,大家一起关注NBA..."
            },
            methods: {
                
            }
        })
    </script>
</body>
</html>

在这里插入图片描述

添加一个过滤器来将msg中的”NBA”,替换为 “美国篮球联盟”

在这里插入图片描述

在这里插入图片描述

我们发现这时候只有一个关键字被替换了,其他两个没变,这时候我们可以通过正则表达式来处理

在这里插入图片描述

在这里插入图片描述

这时我们看到实现了我们需要的效果了

2.过滤器传参数

在通过管道符号来使用过滤器的时候我们还可以传递参数过去,如下

在这里插入图片描述

在这里插入图片描述

传值效果实现了。

3.多个过滤器同时使用

我们对一个信息处理的时候,可以同时使用多个管道符来调用多个过滤器来处理,如下

在这里插入图片描述

页面效果

在这里插入图片描述

4.何为全局过滤器

接下来我们看看什么是全局过滤器,其实我们上面定义的过滤器就是全局过滤器,我们在页面中再增加一个div和一个Vue对象,

在这里插入图片描述

在这里插入图片描述

然后我们在第二个div中使用我们前面定义的过滤器来看看

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

通过以上效果我们也能看出来什么是全局的过滤器了,其实就是我们定义的过滤器可以被本页面中的多个Vue对象所使用

局部过滤器

相对于全局过滤器来说,局部过滤器就是只能够定义这个过滤器的Vue对象可以使用,具体步骤如下:

在这里插入图片描述

使用局部过滤器和前面是一样的

在这里插入图片描述

在这里插入图片描述

通过页面效果我们发现在vm对象中定义的过滤器在vm2中绑定的div中是不可以使用的,只能在定义的Vue对象绑定的div中使用,这就是局部变量。
注意:如果全局过滤器和局部过滤器同名的情况话,会通过就近原则调用局部过滤器!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106498.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C++线程池实现_java线程池状态

    C++线程池实现_java线程池状态在计算机程序中,线程是一种很重要的资源,使用的恰当可以极大的提高程序的效率,也就是多线程的使用,但是多线程会让应用程序变得异常复杂,会占用大量的系统资源。就像QQ表情一样,每一个QQ表情的闪动都需要构建一个线程,如果用户使用了大量的表情(GIF),将会有多少个线程在运行,系统的性能将大大减少,甚至导致死机。在这种情况下,多线程变得不太合适了,那么什么机制适用于这种情况下呢,这就是线程池。通常情

    2022年9月25日
    1
  • MySQL数据库备份的4种方式「建议收藏」

    MySQL数据库备份的4种方式「建议收藏」MySQL备份的4种方式总结:备份方法备份速度恢复速度便捷性功能一般用于cp快快一般、灵活性低很弱少量数据备份mysqldump慢慢一般、可无视存储引擎的差异一般中小型数据

    2022年7月4日
    33
  • java的输入输出格式

    java的输入输出格式不是特别完整和齐全,自己的一些小感悟,希望能帮助大家。对新手很友好,哈哈哈。输入:Scannerin=newScanner(System.in);新创建一个输入的Scanner对象,然后赋值给in,这个作用就是获取控制台的输入!!!in.nextInt()表示读入一个整数inta;表示定义一个变量a=in.nextInt();表示读入了一个数,把右边输入的值赋值给a。这里注意有一些规则,我们可以看到后面的类型名称首字母大写,大家可以记住这个小tip,养成好的代码风

    2022年7月9日
    17
  • python中的if语句格式_python if判断

    python中的if语句格式_python if判断if判断语句if判断语句介绍if语句是用来进行判断的,其使用格式如下:if要判断的条件:条件成立时,要做的事情demo1:age=30print”——if判断开始——“ifage>=18:print”我已经成年了”print”——if判断结束——“

    2022年9月26日
    1
  • android之descendantFocusability用法简析[通俗易懂]

    在做音乐列表ListView的时候,做好之后发现点击item有时候没有反应,仅仅是点击到了里面的控件,后来百度发现,这是开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,由于在你自己定义的Item中存在诸如ImageButton,Button,

    2022年3月9日
    126
  • redis锁实现_IDEA使用try

    redis锁实现_IDEA使用tryWeb全栈~35.显式锁上一期接口Lock显式锁接口的定义       lock()/unlock():就是普通的获取锁和释放锁方法,lock()会阻塞直到成功。       lockInterruptibly():与lock()的不同是,它可以响应中断,如果被其他线程中断了,则抛出InterruptedException。  &nbsp

    2022年10月15日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号