angular - Angular - 使用本地库
问题描述
我创建了两个本地库:
ng new my-library --create-application=false
ng generate library core
ng generate library shared
在共享库中使用核心:
import { CoreModule } from 'core';
@NgModule({
declarations: [SharedComponent],
imports: [
CoreModule
],
exports: [SharedComponent]
})
export class SharedModule { }
我有角度应用程序,它引用了这两个库:
tsconfig.json:
"paths": {
"library/core": ["../library/dist/core/"],
"library/shared": ["../library/dist/shared/"]
}
app.module.ts:
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import {CoreModule} from 'library/core';
import {SharedModule} from 'library/shared';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
CoreModule,
SharedModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
当 SharedModule 没有 import CoreModule 时,我可以成功构建应用程序。但是当 SharedModule 有 import CoreModule 时:
../library/dist/shared/fesm2015/shared.js 中的错误找不到模块:错误:无法解析“angular\library\dist\shared\fesm2015”中的“core”
如何将本地库导入应用程序?谢谢
解决方案
你在项目中添加了package.json
吗?您需要它来解决依赖关系:
"dependencies": {
"library/core": "file:core/dist"
...
问候。
推荐阅读
- jquery - 向使用 Serenity 模板的 ASP.NET 应用程序添加字段验证
- linux - 本地计算机上的 2 个 Postgres 服务器。如何卸载或解除关联?
- sql - 从列中查找具有一个或两个数值的记录
- django - Modelforms:更新时无法查看可编辑内容
- ruby - 在 Ruby 中访问类变量
- laravel - 使用相同的表单请求,但将唯一代码传递给表单请求
- c++ - 为什么我可以在初始化数据成员之前用数据成员初始化引用成员?
- http - 在窗口中调用 http 请求:Angular 5 中的卸载处理程序
- cors - DataService 已启用 CORS,但我仍然看到 401 未经授权的错误(选项)
- c# - 当用户右键单击 NSTableCellView Xamarin.Mac 时如何创建和显示菜单