当前位置:主页 > 网页前端 > vue >

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

时间:2022-04-05 09:55:05 | 栏目:vue | 点击:

使用过滤器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) => {
    ......
}

您可能感兴趣的文章:

相关文章