model.ts导出Angular 4模块/组件时的最佳实践

时间:2017-09-24 00:51:28

标签: angular typescript module model components

我有一个组件库,我正在导出一个需要将对象传递给它的模块。此对象的类型为NavigationModel,我的NavigationModule存在以提供一个主要组件

  • NavigationComponent

我使用NavigationComponent的方式例如app.component.ts就像这样:

<app-navigation-menu [navSettings]="navigationSettings">
  <router-outlet></router-outlet>
</app-navigation-menu>

我要求用户传入navigationObject,它有一些基本设置和组件需要工作的值。回到那个模型:shared/model/navigation.Model.ts

我希望用户在app.component.ts中新建这个模型,如下所示:

ngOnInit() {
    this.navItems = this.navData.getNavigationItems();
    this.navigationObject = new NavigationModel()
    this.navigationObject.navItems = this.navItems;
    this.navigationObject.logoImage = "assets/Logo.png";
    this.navigationObject.logoCondensedImage = "assets/Logo-Condensed.png";
  }

所以我的问题是:

如何从我的组件库中导出此模型,我使用public_api.ts来定义我要导出的每个模块,但是我不会导出这个模型,例如:< / p>

export * from './src/app/modules/navigation/navigation.module'
export * from './src/app/modules/navigation/shared/models/navigation.model'

我觉得我应该只在这里导出模块,那个模块应该导出我的模型吗?

如果只是在我的NavigationModule内导入我的app.module.ts,我就可以在我的NavigationModel中以某种方式提供app.component.ts并且我可以新增()通过输入以下内容,开发人员可以轻松地发现他们需要添加的任何属性:

this.navigationObject.

他们会从intellisense获得一个列表,列出了预期的选项。在这种情况下为他们提供模型的最佳方法是什么?或者有更好的方法吗?

0 个答案:

没有答案