vue中局部过滤器和全局过滤器的使用

关于 vue 过滤器

在这里插入图片描述

在vue1.0的时候其实是内置了过滤器的,但是考虑到好多过滤器并不一定会被开发所调用,所以把原本内置的过滤器就给去掉了,但是过滤器还是比较普遍的,所以我们从vue2.0之后就需要自己定义过滤器

在这里插入图片描述
以上是vue官方对于过滤器的介绍,它通常被用在插值表达式或属性绑定上

vue 过滤器分类

过滤器分为两种,一种是局部过滤器,一种全局过滤器。所有的过滤器都是函数,并且参数为要过滤的数据。

局部过滤器:只允许在当前组件中使用
全局过滤器:所有组件都可以使用

  1. 局部过滤器
    // 创建 Vue 实例,得到 ViewModelvar vm = new Vue({el: '#app',data: {msg: 'filter'},methods: {},//定义私用局部过滤器。只能在当前 vue 对象中使用filters: {dataFormat(msg) {return msg+'xxxxx';}}});

以上代码 filters 这个对象定义的就是局部过滤器,下面代码展示在组件中如何使用过滤器:

  <div id="app"><p>{{ msg | dataFormat}}</p>// 结果   filterxxxxx</div>

当然你也应该在想,这样的过滤器使用起来可能会比较笨重,不够灵活,过滤器既然是函数,那是否可以传参呢?接下来我们通过参数让过滤器的使用变得更加灵活。

// 创建 Vue 实例,得到 ViewModelvar vm = new Vue({el: '#app',data: {msg: 'filter'},methods: {},//定义私用局部过滤器。只能在当前 vue 对象中使用filters: {// msg表示要过滤的数据// a表示传入的参数dataFormat(msg,a) {return msg+a;}}});<!--html部分--><div id="app"><p>{{ msg | dataFormat("你好")}}</p><!--结果   <p>filter你好</p>--></div>
  1. 全局过滤器
    在main.js中的Vue上添加全局过滤器
 //过滤器的定义语法//Vue.filter('过滤器的名称',function () { })//过滤器中的function,第一个参数data,已经被规定死,永远都是过滤器管道符前面传递过来的数据// 从第二个参数开始就是传值// Vue.filter('过滤器名称',function(data){//   return data+123// });
    <script>// 定义一个 Vue 全局的过滤器,名字叫做  toDouble 补零Vue.filter('toDouble', function(msg) {// 字符串的  replace 方法,第一个参数,除了可写一个 字符串之外,还可以定义一个正则return msg < 10 ? msg : "0" +msg})</script><!-- html // --><div> {{ 9 | toDouble }} </div><!-- // 结果 <div>09</div> -->

总结

全局的过滤器要比局部过滤器使用的更广泛一些,说白了我们为什么要使用过滤器,其实就跟使用函数是一样,我们想把一些方法封装,供其它组件使用,这样调用起来方便,开发更快捷。

注意: 如果全局过滤器和局部过滤器名字重复,我们会按照远近使用,优先级 : 局部>全局

过滤器并不是只可以使用一个,一个数据可以用多个过滤器,从左向右执行,注意的下一个过滤器接收的是上一个过滤器的处理结果,因此千万要注意使用顺序
例如下例中,会把message的当做参数传入A过滤器进行过滤,A过滤器过滤完的数据返回值会传入B过滤器

{{ message | filterA | filterB }}

(另外偷偷告诉你个小技巧,可以考虑针对时间戳格式化写成全局过滤器,就不用我们再每次都费心格式化了)

参考:
https://zhuanlan.zhihu.com/p/114174180
https://www.jb51.net/article/155011.htm
https://blog.csdn.net/qq_43363884/article/details/105582631

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1380042.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

瑞星杀毒软件、奇虎360杀毒软件、360卫士、百度卫士联手,搞不定弹出广告 amp; 恶意广告图标...

一位网友说他的电脑近期出了问题&#xff1a;开机后桌面和任务栏上的高速启动栏会出现恶意图标。删除了下次开机又会出现&#xff1b;使用电脑过程中每分钟都会弹出广告。他为电脑安装了瑞星杀毒软件、奇虎360杀毒软件、360卫士、百度卫士。以及广告神盾&#xff0c;都不能解决…

《颠覆者 周鸿伟自传》阅读笔记

《颠覆者 周鸿伟自传》读后感 2022年11月14号读完&#xff0c;花了两天的时间读完。周鸿伟作为一个从小叛逆高智商的男生&#xff0c;对计算机有着执着的热爱&#xff0c;大学选择计算机&#xff0c;本科和研究生期间创业三次&#xff0c;从杀毒卡到3721再到360安全卫士&#x…

详细分析Apple macOS 6LowPAN 漏洞(CVE-2020-9967)

聚焦源代码安全&#xff0c;网罗国内外最新资讯&#xff01; 安全研究员 Alex Plaskett 在2020年5月向苹果报告了影响MacOS Big Sur 的一个漏洞 &#xff08;CVE-2020-9967&#xff09;。苹果公司在12月5日宣布该漏洞已在各平台公开后&#xff0c;Plaskett 于昨天发布了该漏洞的…

已解决 adb server version 31 doesn't match this client 36

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! 运行adb 命令的时候报错: C:\Users\Administrator>adb devices List of devices atta…

详细分析开源软件项目 Ajax.NET Professional 中的RCE 漏洞(CVE-2021-23758)

聚焦源代码安全&#xff0c;网罗国内外最新资讯&#xff01; 作者&#xff1a;Hans-Martin Mnch 编译&#xff1a;代码卫士 2021年秋&#xff0c;MOGWAI LABS 实验室在为客户进行渗透测试过程中发现了开源组件 “Ajax.NET Professional” 中的一个反序列化漏洞 (CVE-2021-23758…

渗透测试中弹shell的多种方式及bypass

目录 常见姿势bashpythonncphpJava 脚本反弹perl 脚本反弹powershellmsfvenom 获取反弹一句话 Windows白加黑MSBuildInstallutil.exe&csc.exeregasm和regsvcsmshtaMsiexec简介&#xff1a;wmicrundll32 payload分离免杀shellcode loadercsc和InstallUtil 偏僻语言pyinstall…

信息安全技术 网络安全漏洞分类分级指南(GB/T 30279-2020 )

文章目录 前  言1 范围2 规范性引用文件3 术语和定义4 缩略语5 网络安全漏洞分类5.1 概述5.2 代码问题5.3 配置错误5.4 环境问题5.5 其他 6 网络安全漏洞分级6.1 概述6.2 网络安全漏洞分级指标6.3 网络安全漏洞分级方法 附 录 A&#xff08;规范性附录&#…

[渗透测试]Vulnstack 红队(二)

域环境初始化 DC IP&#xff1a;10.10.10.10 OS&#xff1a;Windows 2012(64) 应用&#xff1a;AD域WEB IP1&#xff1a;10.10.10.80 IP2&#xff1a;192.168.111.80 OS&#xff1a;Windows 2008(64) 应用&#xff1a;Weblogic 10.3.6 MSSQL 2008PC IP1&#xff1a;10.10.…

2021长安“战疫”网络安全卫士守护赛 misc部分writeup

2021长安“战疫”网络安全卫士守护赛 misc部分writeup 八卦迷宫朴实无华的取证西安加油ez_Encrypt 一百多名&#xff0c;我觉得还行欸&#xff0c;多亏了队里的crypto手 八卦迷宫 签到题&#xff0c;走迷宫&#xff0c;换成字就可以了 朴实无华的取证 老规矩先看pslist 进程…

腾讯云CVM服务器端口在安全组中打开!

腾讯云服务器CVM端口怎么开通&#xff1f;腾讯云服务器端口是通过配置安全组规则来开通的&#xff0c;腾讯云服务器网以开通80端口为例来详细说下腾讯云轻量应用服务器开启端口的方法&#xff0c;其他的端口的开通如8080、1433、443、3306、8888等端口也适用于此方法&#xff0…

window7 安装JDK17下载安装

1、下载JDK JDK下载官网&#xff1a;https://www.oracle.com/ 2、安装JDK 双击打开下载好的JDK进入安装界面 选择安装的位置 等待安装成功 安装成功 3、环境变量配置 右键此电脑选择属性选择高级系统设置&#xff08;展示是win7系统&#xff0c;win10也有仔细找找&#xff09;…

下载文件旁边附的MD5/SHA256有什么用途

下载软件等文件的时候&#xff0c;在下载地址旁边会附着一个乱码&#xff08;MD5、SHA256等加密后的字符串&#xff09;&#xff0c;之前知道是用来校验文件是否完整的&#xff0c;但一直没有真正用过。今天尝试了一下。非常简单。 例&#xff1a; https://www.python.org/down…

ngx.md5生成文件的md5值

ngx.md5()的参数必须是字符串&#xff0c;但要校验lua上传文件的MD5&#xff0c;怎么办&#xff1f; 方法: 先open 再read, 然后调用ngx.md5 local fio.open(filename,"rb") local s1f:read("*a") ngx.say(ngx.md5(s1)) f:close() 附&#xff1a; ngi…

MD5加密及Python源码魔改

MD5全称:message-digest algorithm 5 翻译过来就是:信息 摘要 算法 5 一、特点 1.长度固定: 不管多长的字符串,加密后长度都是一样长 作用:方便平时信息的统计和管理 详解&#xff1a;经过MD5加密生成一个固定长度为128bit的串。因为128位0和1的二进制串表达不友好&#xf…

【教程】初识云函数,实现无需服务器的项目上云!

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 你是否也在忧愁&#xff0c;想把自己的项目放在云上跑&#xff0c;但又不想花大价钱购买云服务器&#xff1f; 云函数介绍 云函数(Serverless Cloud Function&#xff0c;SCF)的简单理解就是&#xff1a;可以部署…

四、文件上传系列-计算文件MD5值

根据业务需要&#xff0c;在上传文件前我们要读取文件的md5值&#xff0c;将md5值传给后端用作秒传和断点续传文件的唯一标识。那么前端就需要使用js获取文件的md5值&#xff0c;对于普通小文件可以很轻松的读取文件md5值&#xff0c;而超大文件的md5值是如何快速的获取到的呢&…

大华智慧园区综合管理平台SQL注入漏洞

大华智慧园区综合管理平台SQL注入漏洞 一、 产品简介二、 漏洞概述三、 复现环境四、 漏洞复现PoC查询当前用户小龙POC检测: 五、 修复建议 免责声明&#xff1a;请勿利用文章内的相关技术从事非法测试&#xff0c;由于传播、利用此文所提供的信息或者工具而造成的任何直接或者…

ApiPost的使用

1. 设计接口 请求参数的介绍 Query:相当于get请求&#xff0c;写的参数在地址栏中可以看到 Body: 相当于 post请求&#xff0c;请求参数不在地址栏中显示。 请求表单类型&#xff0c;用form-data json文件类型&#xff0c;用row 2. 预期响应期望 设置完每一项点一下生成响应…

数学建模(一)前继概念

课程推荐&#xff1a;数学建模老哥_哔哩哔哩_bilibili 目录 一、什么是数学建模&#xff1f; 二、数学建模的一般步骤 三、数学建模赛题类型 1.预测型 2. 评价类 3.机理分析类 4. 优化类 一、什么是数学建模&#xff1f; 数学建模是利用数学方法解决实际问题的一种实践。…

Chrome浏览器各版本对应的驱动

目录 1、Chrome浏览器各版本&#xff08;低版本&#xff09;对应的驱动2、其他版本&#xff08;高版本&#xff09;直接在对应的目录下下载即可3、下载地址 1、Chrome浏览器各版本&#xff08;低版本&#xff09;对应的驱动 chromedriver版本支持的Chrome版本v2.41v67-69v2.40v…