首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在TypeScript中创建基于接口文件定义的对象?

如何在TypeScript中创建基于接口文件定义的对象?
EN

Stack Overflow用户
提问于 2012-10-30 23:42:45
回答 10查看 456.4K关注 0票数 429

我定义了一个这样的接口:

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"

可以使用接口来描述我的模态对象吗?如果可以,我应该如何创建它?

EN

回答 10

Stack Overflow用户

发布于 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中,同时仍然提供数据结构化和类型检查的好处。

票数 239
EN

Stack Overflow用户

发布于 2017-12-03 18:26:25

你可以做到

var modal = {} as IModal 
票数 21
EN

Stack Overflow用户

发布于 2018-01-23 17:23:38

因为我没有在上面找到一个相等的答案,所以我的答案是不同的。我有:

modal: IModal = <IModal>{}
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13142635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档