interface Mode {
baseApi: String,
mockApi: String
}
interface Person {
dev: Mode,
prod: Mode
}
const env: string = import.meta.env.MODE || 'prod'
const EnvConfig: Person = {
dev: {
baseApi: '/',
mockApi: '/'
},
prod: {
baseApi: '/',
mockApi: '/'
}
}
export default {
env,
mock: false,
namespace: 'cloth',
...EnvConfig[env]
}
...EnvConfig[env] 报错
错误提示:
元素隐式具有 "any" 类型,因为类型为 "string" 的表达式不能用于索引类型 "Person"。
在类型 "Person" 上找不到具有类型为 "string" 的参数的索引签名。ts(7053)
定义变量的时候不要赋初值,直接赋值对象就没有问题。