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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 亲测解决 :Navigation cancelled from “xxx“ to “xxx“ with a new navigation

    亲测解决 :Navigation cancelled from “xxx“ to “xxx“ with a new navigation使用vue3.0写了一个登入页面,再点击登入的时候,第一次点击会没有反应,F12查看接口都调用了但是没有跳转,控制台打印出错:错误说有异常没有捕获;这个错误是vue-router内部的错误,没有进行catch处理导致的;再vue-router3.0以上的版本新增功能:push和replace方法会返回一个promise;解决方案:在vue的router的js中添加下面代码constoriginalPush=VueRouter.prototype.pushconstorigin

    2022年7月26日
    7
  • VC断点失败的原因之一

    VC断点失败的原因之一VC断点失败的原因之一flyfish2014-10-23情景再debug状态下只有一个cpp文件,命中不了断点。提示可以允许源代码与原始版本不同不采用,防止出现未知的隐患问题分析1头文件(.h)和实现文件(.cpp),经过编译生成OBJ文件,OBJ文件通过连接(Link)生成EXE文件简化:.h+.cpp->obj->exe

    2022年8月12日
    4
  • oracle触发器实例

    oracle触发器实例最近有一个需求,一个数据库的表在插入和删除的时候另外一个数据库中的表也做相应的操作。我的想法是1.首先两个数据库可以连接,通过dblink可以解决。2.建立插入和删除才能触发的触发器。直接上代码createorreplacetriggersynch_useridafterinsertordeleteoneosoperatorFOREACHROW–每一行触发一次…

    2022年7月27日
    2
  • Css中写RGB颜色

    Css中写RGB颜色在Css样式中写RGB颜色样式:

    2022年6月13日
    28
  • java游戏下载网址_手机java游戏下载网站

    java游戏下载网址_手机java游戏下载网站懒得码代码了,直接把链接放这里UC游戏中心http://wap.9game.cn数熊(被和谐了)http://www.goonmax.comhttp://d.958shop.com/format/game/0-88/http://www.47473.com/symbianjava/玩家个人站http://www.11ou.com/jgamehttp://app.cnmo.com/java/c102…

    2022年7月21日
    17
  • laravel中将session由文件保存改为数据库保存

    laravel中将session由文件保存改为数据库保存

    2021年10月22日
    41

发表回复

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

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