使用Typescript而不是类语法在Vue.js中的索引签名

时间:2019-01-24 06:31:46

标签: typescript vue.js vuejs2

正如标题所述,我目前正在使用将Vue.js与Typescript结合使用的项目,但我使用的是经典Vue synax,而不是单个文件模板的类语法。因此,我没有使用任何类,也没有定义接口等。

我遇到了一些隐式的任何类型问题,我似乎找不到解决方案。 例如

export default Vue.extend({ 
    methods: {
        sortNumeric(a: object, b: object, fieldName: string): number {
            if (this.ascending) {
                return (a[fieldName] - b[fieldName];
            } else {
                return b[fieldName] - a[fieldName];
            }
        }
    }
});

这是我的一个SFT中的一种方法。对于a [fieldName]和b [fieldName],我不断收到错误消息:“元素隐式具有'any'类型,因为类型'{}'没有索引签名。”

如何解决此问题?我发现有人提到要在接口中添加定义,但是由于我没有使用类语法,所以我无权访问接口。而且我不想将noImplicitAny设置为false,因为这样会打开另一整个蠕虫罐头。

0 个答案:

没有答案