Vue的过滤器你真了解吗


Posted in Vue.js onFebruary 24, 2022

1. 过滤器

案例中使用到时间格式相关API

1.1 对过滤器的理解

定义:对要显示的数据进行特定格式化后在显示

适用:做一些简单的逻辑处理

特点:滤器可以做一些简单操作,并且没有改变原来的数据,产生新的对应的数据

​ 1. 语法 : data | 过滤器

​ 不传参数默认将data值传入,并且自动调用函数,函数可接收到value

​ 传参数并不会覆盖掉第一个参数,第一个参数默认是value,第二个参数才是 传入的参数

​ 2. 滤器可以以串联的形式

​ data | 过滤器 | 过滤器

​ 执行的顺序是将data当做参数传入到第一个过滤器中,第一个过滤器处理完,返回的

​ 值作为第二个过滤器的参数

1.2 全局过滤器:

Vue.filter(filterName, function(value){
  return value.slice(0, 4);
})
new Vue({
	.
	..
	...
})

1.3 局部过滤器:

new Vue{
	filters:{
		filterName(value){
      return value.slice(0, 4);
		}
	}
}

在html中使用过滤器

<div>{{ handledata | filtername }}</div>
<div>{{ handledata | filtername(参数) }}</div>

1.4 过滤器的案例

<div id="root">
        <h3>methods写的:{{time()}}</h3>
        <h3>computed写的:{{time1}}</h3>
        <h3>过滤器的写的:{{number | ftime("YYYY-MM-DD HH:mm:ss") | qjtime}}</h3>
    </div>
    <div id="root2">
        <hr>
        <h3>{{name | qjtime}}</h3>
    </div>
    <script>
        Vue.config.productionTip = false
        // 全局过滤器
        Vue.filter('qjtime', function (val) {
            return val.slice(0, 4)
        })
        let vm = new Vue({
            el: '#root',
            data: {
                number: Date.now()
            },
            methods: {
                time() {
                    return dayjs(this.number).format("YYYY年MM月DD日 HH:mm:ss")
                }
            },
            computed:
            {
                time1: {
                    get() {
                        return dayjs(this.number).format("YYYY年MM月DD日 HH:mm:ss")
                    }
                }
            },
            // 局部过滤器
            filters:
            {
                // 这是ES的语法表示如果有传参数就使用传进来的参数,如果没有传参就使用
                ftime(val, str = "YYYY年MM月DD日 HH:mm:ss") {
                    return dayjs(val).format(str)
                },
            }
        })

        new Vue({
            el: "#root2",
            data: {
                number: Date.now(),
                name: '我是第二个Vue'
            }
        })
    </script>

总结

以上就是今天要讲的内容,本文介绍了对过滤器的一些相关知识,希望对大家有所帮助!

Vue.js 相关文章推荐
浅析VUE防抖与节流
Nov 24 Vue.js
详解vue-cli项目在IE浏览器打开报错解决方法
Dec 10 Vue.js
基于vue+echarts数据可视化大屏展示的实现
Dec 25 Vue.js
如何管理Vue中的缓存页面
Feb 06 Vue.js
vue 使用饿了么UI仿写teambition的筛选功能
Mar 01 Vue.js
vue实现可移动的悬浮按钮
Mar 04 Vue.js
vue 中 get / delete 传递数组参数方法
Mar 23 Vue.js
vue项目实现分页效果
Mar 24 Vue.js
如何理解Vue简单状态管理之store模式
May 15 Vue.js
一文带你理解vue创建一个后台管理系统流程(Vue+Element)
May 18 Vue.js
Vue和Flask通信的实现
May 19 Vue.js
vue中div禁止点击事件的实现
Apr 02 Vue.js
Vue监视数据的原理详解
Feb 24 #Vue.js
Vue的列表之渲染,排序,过滤详解
Vue3如何理解ref toRef和toRefs的区别
Feb 18 #Vue.js
Vue h函数的使用详解
Feb 18 #Vue.js
详解Vue中$props、$attrs和$listeners的使用方法
Feb 18 #Vue.js
前端vue+express实现文件的上传下载示例
一篇文章告诉你如何实现Vue前端分页和后端分页
You might like
星际争霸 Starcraft 秘技补丁
2020/03/14 星际争霸
PHP获取数组最大值下标的方法
2015/05/12 PHP
Laravel+jQuery实现AJAX分页效果
2016/09/14 PHP
妙用Jquery的val()方法
2012/06/27 Javascript
JQuery入门基础小实例(1)
2015/09/17 Javascript
谈谈对offsetleft兼容性的理解
2015/11/11 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
详解jQuery Mobile自定义标签
2016/01/06 Javascript
AngularJS辅助库browserTrigger用法示例
2016/11/03 Javascript
js中Number数字数值运算后值不对的解决方法
2017/02/28 Javascript
从vue源码看props的用法
2019/01/09 Javascript
微信小程序wx.request拦截器使用详解
2019/07/09 Javascript
javascript Canvas动态粒子连线
2020/01/01 Javascript
JavaScript装箱及拆箱boxing及unBoxing用法解析
2020/06/15 Javascript
vue.js实现照片放大功能
2020/06/23 Javascript
vue+echarts实现中国地图流动效果(步骤详解)
2021/01/27 Vue.js
Python实现查找系统盘中需要找的字符
2015/07/14 Python
python的pdb调试命令的命令整理及实例
2017/07/12 Python
Python tornado队列示例-一个并发web爬虫代码分享
2018/01/09 Python
opencv python 2D直方图的示例代码
2018/07/20 Python
python实现本地批量ping多个IP的方法示例
2019/08/07 Python
python获取引用对象的个数方式
2019/12/20 Python
python计算Content-MD5并获取文件的Content-MD5值方式
2020/04/03 Python
如何在scrapy中集成selenium爬取网页的方法
2020/11/18 Python
CSS3+font字体文件实现圆形半透明菜单具体步骤(图解)
2013/06/03 HTML / CSS
adidas旗下高尔夫装备供应商:TaylorMade Golf(泰勒梅高尔夫)
2016/08/28 全球购物
英国现代市场:ARKET
2019/04/10 全球购物
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
大学生咖啡店创业计划书
2014/01/21 职场文书
上课说话检讨书大全
2014/01/22 职场文书
大学生撤销处分思想汇报
2014/09/12 职场文书
党员自我剖析材料范文
2014/10/06 职场文书
个人投资合作协议书
2014/10/12 职场文书
技术转让协议书
2016/03/19 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL
JS前端可视化canvas动画原理及其推导实现
2022/08/05 Javascript