【问题标题】:Is there a better way to define these Angular/Ionic models?有没有更好的方法来定义这些 Angular/Ionic 模型?
【发布时间】:2019-12-02 22:23:39
【问题描述】:

我正在处理的一个新的 Angular/Ionic 项目在单个 .model.ts 文件中以下列方式定义了许多模型。

export class Order {
    constructor(
        public OrderId?: string,
        public Items?: string[],
    ) {}
}

export class OrderStatus {
    constructor(
        public OrderId?: string,
        public __str__: string,
    ) {}
}

并在其他文件中使用

导入
import { Order, OrderStatus } from 'src/app/.../models/orders/orders.model.ts';

这是一个不错的单行,但我想知道是否有更好的方法来加载模型和结构目录/文件。

我正在考虑实现以下模式:

'src/app/.../models/orders/order.model.ts';
'src/app/.../models/orders/order-status.model.ts';

每个文件都定义了其对应的OrderOrderStatus 类。在我看来,这似乎是抽象每个模型的更好方法,因为现在文件名直接对应于内部定义的类;文件和模型之间建立了一对一的关系。

我重塑此文件结构的动机是为了促进项目的未来升级。

我确实预见到的一个缺点是在同一个组件/服务中导入这两个模型时必须使用两行代码。我曾经会像这样导入两个类的地方

import { Order, OrderStatus } from 'src/app/.../models/orders/orders.model.ts';

我现在必须像这样导入它们

import { Order } from 'src/app/.../models/orders/order.model.ts';
import { OrderStatus } from 'src/app/.../models/orders/order-status.model.ts';

我已经对此进行了谷歌搜索,但找不到任何有关 Ionic 项目模型定义最佳实践的文档,这就是我在此处发布我想到的逻辑方法的原因。

我的方向正确吗? 我应该不理会当前的结构并专注于其他事情吗? 有没有更好的方法来做到这一点?

【问题讨论】:

    标签: angular typescript ionic-framework model


    【解决方案1】:

    好的,所以我对 Angular 样式指南 (https://angular.io/guide/styleguide) 进行了更多挖掘,根据“一规则”,最好在文件中只包含一个类。

    单个组件可以是其文件的默认导出,这有助于路由器延迟加载。

    【讨论】:

      猜你喜欢
      • 2019-05-14
      • 2019-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多