繁体   English   中英

从多个 angular2 组件为 CRUD 应用程序创建 NPM 包

[英]Create NPM package from multiple angular2 components for a CRUD application

我是 angular2 的新手,我已经成功地为创建/编辑、查看和列出员工创建了三个组件,组件选择器类似于<create-employee>, <view-employee>, <list-employee>

我的要求是我需要在 nodejs 库中创建一个 npm 包,以便公开分发这个员工模块,这样单个 npm 模块应该可以使用所有这三个组件。

到目前为止,我确实在本文档的帮助下创建了一个 npm 包。 我可以将它作为节点模块安装在我的应用程序中,并成功地使用了创建员工功能。 但我缺少的是其他两个组件。 与其为视图和列表创建另外两个节点包,我希望在单个 npm 包中提供这三个组件。

我期待的是:

app.module.ts

import { EmployeeModule } from 'employee-library';
@NgModule({
  declarations: [..],
  imports: [EmployeeModule],
  providers: [],
  bootstrap: [AppComponent]
 })

user-create.component.html
  <create-employee></create-employee>

user-view.component.html
  <view-employee></view-employee>

user-list.component.html
  <list-employee></list-employee>

将您的 3 个组件包装在EmployeeModule

import { NgModule } from '@angular/core';
// import ... 3 modules

@NgModule({
  declarations: [ CreateEmployee, ViewEmployee, ListEmployee ],
  imports: [...],
  providers: [...],
  exports: [ CreateEmployee, ViewEmployee, ListEmployee ]
})
export class EmployeeModule{ }

然后公开你的图书馆,之后,你可以使用你的模块

import { EmployeeModule } from 'employee-library';
@NgModule({
  declarations: [..],
  imports: [EmployeeModule],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule{ }

export : Array|any[]> 指定指令/管道/模块的列表,这些指令/管道/模块可在作为导入此 Angular 模块的 Angular 模块的一部分的任何组件的模板中使用。

文档链接https://angular.io/docs/ts/latest/api/core/index/NgModule-interface.html#!#exports-anchor

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM