当前位置: 首页 > news >正文

01-05.Vue自定义过滤器

目录

    • 前言
      • 过滤器的概念
      • 过滤器的基本使用
      • 给过滤器添加多个参数

前言

我们接着上一篇文章01-04.Vue的使用示例:列表功能 来讲。


下一篇文章 02-Vue实例的生命周期函数

过滤器的概念

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

过滤器的基本使用

比如说,我要将data中msg 后面添加字符串。可以这样做:

(1)在差值表达式中这样调用:

        <p>{{ msg | msgFormat }</p>

上方代码的意思是说:

  • 管道符前面msg:要把 msg 这段文本进行过滤,

  • 管道符后面msgFormat:是通过msgFormat这个过滤器进行来操作。

(2)定义过滤器msgFormat

// filter是过滤器的对象,里面可以定义多个过滤器
// 定义一个过滤器,名字叫做  msgFormat
filters: {msgFormat: function(msg){return msg + '111111'}
}

上方代码解释:

  • 过滤器函数function中,第一个参数指的管道符前面的msg。

  • return 返回的值可以直接在页面上显示

最终,完整版代码如下:

<template><div id="app">{{ '22222' | msgFormat }}</div>
</template><script>
export default {filters: {msgFormat: function(msg){return msg + '111111'}},data() {return {};},methods: {mySubmit: function () {alert("ok");},},
};
</script>

网页显示效果如下:

15

给过滤器添加多个参数

上面的举例代码中,{{ msg | msgFormat }}中,过滤器的调用并没有加参数,其实它还可以添加多个参数。

接下来,我们在上面的举例代码中进行改进。

改进一:过滤器加一个参数。如下:

将 msg 这个字符串进行拼接。代码如下:

<template><div id="app"><!-- 【重要】通过 过滤器 msgFormat 对 msg 进行过滤。括号里的参数代表 function中的 arg2--><p>{{ msg | msgFormat('xxx') }}</p></div>
</template><script>
export default {filters: {msgFormat: function(msg, arg2){return msg + '111111' + arg2}},data() {return {msg: "聆听感受思考"};},methods: {mySubmit: function () {alert("ok");},},
};
</script>
<style>
#app{color: black;
}
</style>

16

注意代码中那行重要的注释:括号里的参数代表 function中的 arg2。

相关文章:

  • 在树莓派3B+中下载opencv(遇到的各种问题及解决)
  • 宿舍管理系统代码详解(操作界面)
  • 人人皆是黑客?EvilProxy推出一键反向代理服务
  • vue深度选择器(:deep​)
  • LeetCode 343. 整数拆分 (dp动态规划)
  • Xshell远程连接服务器需要哪些依赖包、
  • Python条件分支与循环
  • 【全开源】点餐小程序系统源码(ThinkPHP+FastAdmin+UniApp)
  • 快速搭建 WordPress 外贸电商网站指南
  • Linux——多线程(一)
  • 设计模式19——观察者模式
  • EXCEL VBA终极提速,超级公式,算法优化
  • Oracle EBS API创建AP发票报错:ZX_TAX_STATUS_NOT_EFFECTIVE和ZX_REGIME_NOT_EFF_IN_SUBSCR-
  • AIGC(人工智能生成内容)行业现在适合进入吗
  • ARM鲲鹏920-oe2309-caffe
  • ES6指北【2】—— 箭头函数
  • __proto__ 和 prototype的关系
  • “大数据应用场景”之隔壁老王(连载四)
  • Computed property XXX was assigned to but it has no setter
  • css系列之关于字体的事
  • ES6核心特性
  • Git 使用集
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • laravel 用artisan创建自己的模板
  • learning koa2.x
  • Theano - 导数
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 百度小程序遇到的问题
  • 携程小程序初体验
  • 因为阿里,他们成了“杭漂”
  • const的用法,特别是用在函数前面与后面的区别
  • 资深实践篇 | 基于Kubernetes 1.61的Kubernetes Scheduler 调度详解 ...
  • ​ArcGIS Pro 如何批量删除字段
  • ‌‌雅诗兰黛、‌‌兰蔻等美妆大品牌的营销策略是什么?
  • !! 2.对十份论文和报告中的关于OpenCV和Android NDK开发的总结
  • #HarmonyOS:软件安装window和mac预览Hello World
  • #设计模式#4.6 Flyweight(享元) 对象结构型模式
  • #职场发展#其他
  • (1)常见O(n^2)排序算法解析
  • (7)STL算法之交换赋值
  • (floyd+补集) poj 3275
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (超详细)2-YOLOV5改进-添加SimAM注意力机制
  • (纯JS)图片裁剪
  • (二)Linux——Linux常用指令
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (三)elasticsearch 源码之启动流程分析
  • (转)AS3正则:元子符,元序列,标志,数量表达符
  • (转)大型网站架构演变和知识体系
  • .axf 转化 .bin文件 的方法
  • .NET COER+CONSUL微服务项目在CENTOS环境下的部署实践
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET Core SkiaSharp 替代 System.Drawing.Common 的一些用法
  • .NET Core 中的路径问题
  • .xml 下拉列表_RecyclerView嵌套recyclerview实现二级下拉列表,包含自定义IOS对话框...