【问题标题】:TS interface or classTS 接口或类
【发布时间】:2017-05-09 08:52:26
【问题描述】:

这可能是一个愚蠢的问题,但我刚刚与一位同事进行了辩论。 TS 中应该使用什么来塑造对象、类或接口? 我需要知道一个函数返回一个特定类型的对象,应该用什么?

export class Person{
    name: string;
    lastName: strig;
    dob: Date;

    constructor() {}
}

export interface IPerson{
    name: string;
    lastName: string;
    dob: Date;
}

【问题讨论】:

  • 如果你需要添加实际行为,你需要一个类。否则,您可能希望分享更多您的用例,因为 TypeScript 有多种定义类型的方法 - 所以您不仅可以选择 classinterface - 还有文字类型、隐式(推断)类型, 输入别名...

标签: class typescript interface


【解决方案1】:

对我来说,创建对象的最佳方法是使用 INTERFACE !因为您可以轻松地将其作为 JSON 对象存储在像 Firebase 这样的数据库中......您没有函数只有属性

然后你可以使用带有函数的类来管理对象类型的接口

界面

export interface IObject {
    id : string,
    name: string,
    description : string
}

然后是班级

import { IObject  } from "../interfaces/iobject";
export class ObjectService {
    myObject = {} as IObject
    constructor() {}
    getDescription(anObject : IObject){ return anObject.description  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-02-01
    • 1970-01-01
    • 2017-05-31
    • 1970-01-01
    • 2019-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多