【发布时间】:2019-10-27 21:45:54
【问题描述】:
interface CustomResponse {
data: string;
status: number;
[key: string]: string | number;
}
const RESPONSE_PROPS = {
DATA: "data",
STATUS: "status",
};
const response: CustomResponse = {
data: "test",
status: 200,
};
let dataWrong: string = response[RESPONSE_PROPS.DATA];
let dataRight: string = response.data;
dataWrong 得到错误
Type 'string | number' is not assignable to type 'string'. Type 'number' is not assignable to type 'string'
在上述情况下,如何在 typescript 中获得dataWrong infer 正确的类型?类型断言(更好的类型保护)是唯一的方法吗?
【问题讨论】:
标签: javascript typescript types