vue过滤器

1.用到的方法

Vue的filter()方法

1.语法各式:Vue.filter('过滤器名字',处理函数 )


2.定时器

2.实现步骤

先要引入moment库来实现过滤时间


定义一个过滤器,通过在处理函数里去返回一个过滤后的时间


moment语法可查看文档

moment后面带的参数就是需要被过滤的时间,format后面带的则是过滤后的各式


这样一个过滤器就定义好了,然后在页面中渲染出来即可


过滤器的使用语法就是{{需要被过滤的数据 | 过滤器名字}}

还可以通过多传一个参数,来限制一下过滤之后的数据

只需要在定义的时候给过滤器的处理函数多传一个参数,然后在下方返回值里的各式里加上一个判断,当有传各式参数的时候,就按各式参数显示数据,没传的话就按原本设置的各式显示

同时,只需要在渲染的时候在过滤器后面加上想要指定的日期各式即可


实现效果


现在的数据在页面中是死的不会变,要想实现会动的时间,只需要再页面加载数据的时候定义一个定时器即可

这里要注意,实在vue的生命周期函数mounted()里面定义的,设置这个定时器一秒更新一次,就可以实现页面会动的时间显示啦

代码:
<!DOCTYPE html>

<html lang="en">

    <meta charset="UTF-8">

    <title>Title

    <script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js">

    <script type="text/javascript" src="https://cdn.bootcss.com/moment.js/2.22.1/moment.js">

<div id="app">

    原始版时间:<p>{{time}}

    过滤之后:<p>{{time | guolvqi}}

    只显示年月日:<p>{{time | guolvqi('YYYY-MM-DD')}}

    只显示时分秒:<p>{{time | guolvqi('HH:mm:ss')}}

    Vue.filter('过滤器名字',function (value) {

return(moment(value).format('YYYY-MM-DD HH:mm:ss'))

})

Vue.filter('guolvqi',function (value,geshi) {

return(moment(value).format(geshi ||'YYYY-MM-DD HH:mm:ss'))

})

new Vue({

el:"#app",

        data:{

time:new Date(),

        },

        mounted() {

setInterval(()=>{

this.time=new Date()

},1000)

}

})

</html>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • <!doctype html> vue filter var Filter = {dateTi...
    zhanggongzi阅读 5,825评论 0 0
  • 在这个教程中,我们将会通过几个例子,了解和学习VueJs的过滤器。我们参考了一些比较完善的过滤器,比如orderB...
    一缕清风1144阅读 10,279评论 0 1
  • 在这个教程中,我们将会通过几个例子,了解和学习VueJs的过滤器。我们参考了一些比较完善的过滤器,比如orderB...
    嘉宝_Appian阅读 4,881评论 1 4
  • |capitalizefiltera|filterb Vue.filter('date', function(va...
    SkTj阅读 767评论 0 0
  • 每一片雪花都是一桩心事 或残缺或圆满 待得月光剥开夜幕 刻满湿漉的板石路面 不曾着见,躺成了平凡 爱雪的人竟撑着伞...
    李译阅读 3,800评论 2 12