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 26 Vue.js
vue使用exif获取图片旋转,压缩的示例代码
Dec 11 Vue.js
vue 使用class创建和清除水印的示例代码
Dec 25 Vue.js
详解实现vue的数据响应式原理
Jan 20 Vue.js
vue3 watch和watchEffect的使用以及有哪些区别
Jan 26 Vue.js
Vue 3自定义指令开发的相关总结
Jan 29 Vue.js
vue使用lodop打印控件实现浏览器兼容打印的方法
Feb 07 Vue.js
vue3.0中使用element的完整步骤
Mar 04 Vue.js
Vue项目中如何封装axios(统一管理http请求)
May 02 Vue.js
关于Vue Router的10条高级技巧总结
May 06 Vue.js
vue+spring boot实现校验码功能
May 27 Vue.js
vue3使用vuedraggable实现拖拽功能
Apr 06 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
php cookies中删除的一般赋值方法
2011/05/07 PHP
PHP5.3新特性小结
2016/02/14 PHP
jQuery 行背景颜色的交替显示(隔行变色)实现代码
2009/12/13 Javascript
js隐藏与显示回到顶部按钮及window.onscroll事件应用
2013/01/25 Javascript
解析javascript 实用函数的使用详解
2013/05/10 Javascript
JS获取月的最后一天与JS得到一个月份最大天数的实例代码
2013/12/16 Javascript
禁用Tab键JS代码兼容Firefox和IE
2014/04/18 Javascript
js取得html iframe中的元素和变量值
2014/06/30 Javascript
Nodejs+express+html5 实现拖拽上传
2014/08/08 NodeJs
详解JavaScript操作HTML DOM的基本方式
2015/10/21 Javascript
js实现动态显示时间效果
2017/03/06 Javascript
Vue中使用vux的配置详解
2017/05/05 Javascript
JS实现“全选”和&quot;全不选&quot;功能代码实例
2020/02/06 Javascript
[34:39]Secret vs VG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
[48:11]完美世界DOTA2联赛 Magma vs GXR 第二场 11.07
2020/11/10 DOTA
Python多线程学习资料
2012/12/19 Python
用Python编写生成树状结构的文件目录的脚本的教程
2015/05/04 Python
使用FastCGI部署Python的Django应用的教程
2015/07/22 Python
在类Unix系统上开始Python3编程入门
2015/08/20 Python
Python实现的rsa加密算法详解
2018/01/24 Python
pandas 获取季度,月度,年度首尾日期的方法
2018/04/11 Python
对Tensorflow中权值和feature map的可视化详解
2018/06/14 Python
python ddt数据驱动最简实例代码
2019/02/22 Python
Python 占位符的使用方法详解
2019/07/10 Python
python实现对图片进行旋转,放缩,裁剪的功能
2019/08/07 Python
使用python批量修改文件名的方法(视频合并时)
2020/03/24 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
Python如何爬取b站热门视频并导入Excel
2020/08/10 Python
一文读懂python Scrapy爬虫框架
2021/02/24 Python
CSS3 3D立方体效果示例-transform也不过如此
2016/12/05 HTML / CSS
CSS3的新特性介绍
2008/10/31 HTML / CSS
会计找工作求职信范文
2013/12/09 职场文书
出纳试用期自我鉴定
2014/04/07 职场文书
超市店庆活动方案
2014/08/31 职场文书
实例详解Python的进程,线程和协程
2022/03/13 Python
CSS实现背景图片全屏铺满自适应的3种方式
2022/07/07 HTML / CSS