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

Vue 过滤器 filter(s) 的使用

即过滤器是用来格式化数据的一个函数。过滤器不会修改原始数据,它的作用是过滤数据,就是对数据进行加工处理并返回处理后的数据,比如做一些数据格式上的修改,状态转换等。

过滤器分为两种

组件内的过滤器(组件内有效)

全局过滤器(所有组件共享)

定义过滤器

第一个参数是过滤器的名字
第二个参数是过滤器的功能函数 (若不定义vue就不知道这个字符串是什么,有什么作用)。

过滤器的功能函数

声明 function(data,argv1,argv2…){}

第一个参数是传入的要过滤的数据,即调用时管道符左边的内容。
第二个参数开始往后就是调用过滤器的时候传入的参数。

先注册,后使用

组件内 filters:{ 过滤器名: fn } fn 内通过 return 返回最终的数据
全局 Vue.filter(‘过滤器名’,fn) fn 内通过 return 返回最终的数据
使用 {{ 数据 | 过滤器名 }}

全局

Vue.filter('过滤器名称', function(val) { // val表示要被处理的数据
    // 过滤器业务逻辑,要有返回值
})<div>{{ msg | 过滤器名称 }}</div>
<div v-bind="msg | 过滤器名称"></div>

局部

data () {
    return {
        msg: 'hello world'
    }
},
//定义私用局部过滤器。只能在当前 vue 对象中使用
filters: {
    dataFormat: (msg, a) => { // msg表示要过滤的数据,a表示传入的参数
        return msg + a;
    }
}<p>{{ msg | dataFormat('!')}}</p> // 结果: hello world!

注意事项

  • 全局注册时是 filter 没有 s , 而组件过滤器是 filters,是有 s 的,虽然写的时候没有 s 也不报错,但是过滤器是没有效果的。
  • 当全局过滤器和局部过滤器名字重复的时候,会以就近原则进行调用,即:局部过滤器优先于全局过滤器被调用
  • 一个表达式可以使用多个过滤器,其执行顺序从左往右,前一个过滤器的结果作为后一个过滤器的被处理数据,所以要注意使用顺序
    在这里插入图片描述

相关文章:

  • Java8新特性
  • 大语言模型中的归一化技术:LayerNorm与RMSNorm的深入研究
  • linux根目录
  • 数据类设计_图片类设计之1_矩阵类设计(前端架构基础)
  • 如何在el-input搜索框组件的最后面,添加图标按钮?
  • ESP32/ESP8266实现多点测温系统,手机端(网页)查看实时温度
  • 第十八篇 SQL优化之逻辑结构:用仓库管理员思维优化数据库
  • 展示深拷贝与移动语义的对比
  • 【DuodooTEKr】物联DTU设备与Odoo18 Maintenance设备模块IOT模块集成技术方案
  • Hadoop的运行模式
  • Leetcode 3478. Choose K Elements With Maximum Sum
  • 内存泄漏出现的时机和原因,如何避免?
  • 抽奖系统测试报告
  • ROS知识篇---ROS的编译配置文件
  • 云创智城YunCharge 新能源二轮、四轮充电解决方案(云快充、万马爱充、中电联、OCPP1.6J等多个私有单车、汽车充电协议)之云快充协议模拟器使用手册
  • Java 面试题
  • 常见的三种锁
  • shiro550-cve-2016-4437复现
  • Java数据结构第二十期:解构排序算法的艺术与科学(二)
  • 2025 - GDB 盲调笔记--调试 “无调试符号“ “无调试信息“ 的三方程序
  • 网站建设移动端官网/信息发布平台推广有哪些
  • 马鞍山建设机械网站/seo 优化思路
  • 外贸网站建设软件/百度北京总部电话
  • 长宁区网站建设开/青岛网站优化
  • 请人做网站需要注意什么条件/seo网络搜索引擎优化
  • 网页设计字体代码/杭州seo