typescript展开数据出错


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)

定义变量的时候不要赋初值,直接赋值对象就没有问题。