vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > 过滤器filters的this为undefined

vue中使用过滤器filters的this为undefined的问题

作者:HonGL54

这篇文章主要介绍了vue中使用过滤器filters的this为undefined的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

使用过滤器filters的this为undefined

vue中的过滤器更偏向于对文本数据的转化,而不能依赖this上下文,如果需要使用到上下文this我们应该使用computed计算属性的或者一个method方法

vue filter过滤器的用法

{undefined{ args | filterFun }} |是管道符 用法如下

{{ time | formatDate }}

过滤器中

filters: {
        formatDate: value => {
           let date = new Date(value)
           let y = date.getFullYear()
           let MM = date.getMonth() + 1
           MM = MM < 10 ? "0" + MM : MM
           let d = date.getDate()
           d = d < 10 ? "0" + d : d
           let h = date.getHours()
           h = h < 10 ? "0" + h : h
           let m = date.getMinutes()
           m = m < 10 ? "0" + m : m
           let s = date.getSeconds()
           s = s < 10 ? "0" + s : s
           return y + "-" + MM + "-" + d + " " + h + ":" + m + ":" + s
        }
    }

time 相当于想要过滤的值 传递给formatDate的参数

也可以多参数 {undefined{ time | formatDate(“嘿哈”) }}

这时过滤器中

//time 传递给 value    "嘿哈" 传递给 arg1
formatDate: (value,arg1) => {
    ......
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文