我有一个组件库,我正在导出一个需要将对象传递给它的模块。此对象的类型为NavigationModel
,我的NavigationModule
存在以提供一个主要组件
我使用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获得一个列表,列出了预期的选项。在这种情况下为他们提供模型的最佳方法是什么?或者有更好的方法吗?