我有一家Vuex商店:
type Movie = {
title: string;
id: number;
}
export default new Vuex.Store({
state: {
searchList: <Movie[]>[],
},当我编译我的代码时,我得到一个错误:
使用“as Movie[]”而不是“”@type eslint eslint/一致性类型断言
我不清楚正确的语法应该是什么。
我试过:
export default new Vuex.Store({
state: {
searchList as Movie[]
},但这一结果是:
速记属性“searchList”的作用域中不存在值。要么声明一个,要么提供一个初始化程序。
发布于 2020-08-11 17:48:06
它要求的是使用as 类型断言来指定[]的类型。
使用as的原因之一是as在TSX文件中工作(因此规则名称中的“一致性”)。
export default new Vuex.Store({
state: {
searchList: [] as Movie[],
},如果您不使用TSX并且更喜欢角括号语法,您可以考虑更新链接器规则。
https://stackoverflow.com/questions/63363586
复制相似问题