在 TypeScript 类中,可以为属性声明类型,例如:
class className {
property: string;
};
如何在对象文字中声明属性的类型?
我尝试了以下代码,但无法编译:
var obj = {
property: string;
};
我收到以下错误:
当前范围内不存在名称“字符串”
我做错了什么还是这是一个错误?
原文由 Dace Zarina 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 TypeScript 类中,可以为属性声明类型,例如:
class className {
property: string;
};
如何在对象文字中声明属性的类型?
我尝试了以下代码,但无法编译:
var obj = {
property: string;
};
我收到以下错误:
当前范围内不存在名称“字符串”
我做错了什么还是这是一个错误?
原文由 Dace Zarina 发布,翻译遵循 CC BY-SA 4.0 许可协议
只是为了扩展@RickLove 的回复……
这很好用,因为您只需要定义无法推断的类型:
const initialState = {
user: undefined as User | undefined,
userLoading: false
};
它转译成这个 js 代码:
const initialState = {
user: undefined,
userLoading: false
};
如果你需要将它提取到一个类型中,你可以这样做:
export type InitState = typeof initialState;
原文由 Zoman 发布,翻译遵循 CC BY-SA 4.0 许可协议
您非常接近,您只需将
=
替换为:
。您可以使用对象类型文字(参见规范第 3.5.3 节)或接口。使用对象类型文字接近于您所拥有的:但是你也可以使用一个接口