我今天写代码的时候出现了这个问题 [vue/no-deprecated-filter] Filters are deprecated.eslint-plugin-vue,原因是项目是vue3.0的,从vue3.0开始,过滤器就被移除了。
官方文档:过滤器 | Vue.js
所有vue3.x不能用过滤器,而是使用方法调用或计算属性来替换它们。
vue2.x中的过滤器:
<span>{{ curTime | Time }}</span>
filters: {
Time(time) {
//如果time存在
if(time) {
var m = Math.floor(time / 60)
var s = Math.round(time % 60)
return `${m < 10 ? "0" + m : m}:${s < 10 ? "0" + s : s}`
}
}
},
vue.3.x把它写到计算属性里:
<span>{{ TimeCurTime }}</span>
computed: {
TimeCurTime() {
if(this.curTime) {
var m = Math.floor(this.curTime / 60)
var s = Math.round(this.curTime % 60)
return `${m < 10 ? "0" + m : m}:${s < 10 ? "0" + s : s}`
}
}
},
大家可以去看一下官方文档。如果写错的话,请各位大佬可以指出。