Sam*_*our 2 model angular-library angular6
我创建了一个新的 Angular 6 库。这个库有一个名为 User 的模型:
export class User {
public id: string;
public username: string;
constructor(id: string,
username: string) {
this.id = id;
this.username = username;
}
}
Run Code Online (Sandbox Code Playgroud)
我在另一个角度应用程序中使用该库,一切正常。但是当我尝试使用模型时:
export class AppComponent {
public user: User;
constructor() {
this.user = new User('1', 'my user');
}
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
Module not found: Error: Can't resolve 'my-lib/lib/models/user.model' in 'C:\my-app\src\app'
Run Code Online (Sandbox Code Playgroud)
智能感知找到了它,但我仍然收到此错误。
应用模块:
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
AppRoutingModule,
UserModule,
],
bootstrap: [AppComponent]
})
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?谢谢!
问题是您没有将模型导出到库的外部世界。为了做到这一点,我建议使用一个额外的文件public_api.ts
,您可以在其中显式导出模型。将其直接放入库的根目录中my-lib
。
然后,用显式导出填充文件,如下所示:
export * from './lib/models/user.model'
Run Code Online (Sandbox Code Playgroud)
那应该这样做。
归档时间: |
|
查看次数: |
2136 次 |
最近记录: |