老师,在5-3作业(数据库配置或配置项需要更新,如何实现)这道题中,在写的过程中出现了问题,为什么在T1处 this.envDbConf[this.env][data]的类型为string | number, T this.envDbConf[this.env][data]的类型为never了呢
setConf<T extends Record<keyof DbConCof, any>>(data: DbConCof): void;
setConf<K extends keyof DbConCof>(key: K, value: DbConCof[K]): void;
setConf(data: any, value?: any): void {
if (isDbConCofKey(data) && data.length > 0) {
const temp = this.envDbConf[this.env][data]; // T1 const temp: string | number
this.envDbConf[this.env][data] = value; // T2 不能将类型“any”分配给类型“never”。
// (this.envDbConf[this.env][data] as any) = value;
} else {
this.envDbConf[this.env] = data;
}
}