[vue/no-deprecated-filter] Filters are deprecated.eslint-plugin-vue

储俊英
2023-12-01

        我今天写代码的时候出现了这个问题   [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}`
            }
        }
    },

        大家可以去看一下官方文档。如果写错的话,请各位大佬可以指出。

 类似资料: