我定义了一个这样的接口:
interface IModal {
content: string;
form: string;
href: string;
$form: JQuery;
$message: JQuery;
$modal: JQuery;
$submits: JQuery;
}
我定义了一个这样的变量:
var modal: IModal;
但是,当我尝试设置me的属性时,它会显示一条消息,说明
"cannot set property content of undefined"
可以使用接口来描述我的模态对象吗?如果可以,我应该如何创建它?
发布于 2014-06-17 03:37:55
如果你想要一个空的接口对象,你可以只做:
var modal = <IModal>{};
使用接口代替类来构造数据的优点是,如果在类上没有任何方法,它将在编译后的JS中显示为空方法。示例:
class TestClass {
a: number;
b: string;
c: boolean;
}
编译成
var TestClass = (function () {
function TestClass() {
}
return TestClass;
})();
它没有任何价值。另一方面,接口根本不会出现在JS中,同时仍然提供数据结构化和类型检查的好处。
发布于 2017-12-03 18:26:25
你可以做到
var modal = {} as IModal
发布于 2018-01-23 17:23:38
因为我没有在上面找到一个相等的答案,所以我的答案是不同的。我有:
modal: IModal = <IModal>{}
https://stackoverflow.com/questions/13142635
复制相似问题