我们尝试创建组件库。这些组件主要是围绕ng-lightning
组件的包装器。
我们使用Angular CLI生成了lib项目。
事实上我们在构建lib时会遇到错误:Cannot determine the module for class NglBadge in /testApp/node_modules/ng-lightning/badges/badge.d.ts!
ng-lightning
的每个组件都会发生此错误。
以下是我们在库模块中导入ng-lightning的方法:
import { NgModule } from '@angular/core';
import { SomeLibComponent } from './some-lib.component';
import { NglModule } from 'ng-lightning/ng-lightning';
@NgModule({
imports: [
NglModule.forRoot(),
],
declarations: [SomeLibComponent],
exports: [SomeLibComponent]
})
export class SomeLibModule { }
有SomeLibComponent:
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'lib-some-lib',
template: `
<ngl-badge type="default">Default</ngl-badge>
`,
styles: []
})
export class SomeLibComponent {
constructor() { }
}
我可以从图书馆方面做些什么来在我们的组件中使用ng-lightning?
这似乎是AOT错误,但我找不到在lib中使用某些第三方库组件/模块而不会触发错误的方法。
这是一个repro存储库。将它放在stackblitz或其他上是很困难的,因为它们不提供lib构建。
https://github.com/blackholegalaxy/lightning-lib-error/blob/master/projects/some-lib/src