首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于NGXS的建模方法

基于NGXS的建模方法
EN

Stack Overflow用户
提问于 2019-03-16 16:10:15
回答 1查看 372关注 0票数 0

我开始将NGXS集成到我的角度项目中,并面临着一个进退两难的局面。

目前,我的所有模型都是类,它还包含处理模型的方法(助手方法,以及操作)。

我知道,使用NGXS时,动作不应该在模型对象中,应该移到操作/状态文件中。

然而,我不知道如何处理其他方法。

一方面,将它们放置在服务中似乎是人为的,因为这些服务主要用于CRUD操作。此外,我能找到的关于不包括NGXS的角度的每一个教程都提倡使用封装模型功能的模型类。

另一方面,到目前为止,我看到的所有NGXS示例都只使用接口作为模型。

下面是一个示例模型类:

代码语言:javascript
复制
export class Person {

    static readonly ADULT_TIME = 18 * 365 * 24 * 60 * 60 * 1000;

    name: string;
    dateOfBirth: Date;

    constructor(name: string, dateOfBirth: Date) {
        this.name = name;
        this.dateOfBirth = dateOfBirth;
    }

    public isAdult(): boolean {
        return (Date.now() - this.dateOfBirth.getTime()) >= Person.ADULT_TIME; 
    }
}

这种模式的一个接口是:

代码语言:javascript
复制
export interface Person {
    name: string;
    dateOfBirth: Date;
}

在使用NGXS (例如isAdult())时,对于如何处理与模型相关的方法,有什么标准方法吗?或者,是否有可能/建议与NGXS一起使用模型类?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-20 02:34:43

简而言之,对状态模型使用接口/对象文本。如果您想要更丰富的模型,可以使用Selector从存储在状态中的内容进行转换。

这里是NGXS页面上的一个讨论re:类或接口。它还显示了一些建议的解决方案。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55198785

复制
相关文章

相似问题

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