Angular 导出节点模块,其中包含角方向的组件库?
我使用Angular CLI创建了一个组件库,并且有一个单独的测试应用程序导入该库 组件库构建得很好,但我在测试应用程序中运行“ng serve”时遇到问题,因为库中的一个组件使用了我专门安装在库中的npm包:“jwt decode” 例如,库中的一个组件具有以下行:Angular 导出节点模块,其中包含角方向的组件库?,angular,jwt,node-modules,angular-library,angular2-jwt,Angular,Jwt,Node Modules,Angular Library,Angular2 Jwt,我使用Angular CLI创建了一个组件库,并且有一个单独的测试应用程序导入该库 组件库构建得很好,但我在测试应用程序中运行“ng serve”时遇到问题,因为库中的一个组件使用了我专门安装在库中的npm包:“jwt decode” 例如,库中的一个组件具有以下行: import * as jwt_ from 'jwt-decode'; 库的package.json有以下行 "dependencies": { "@types/jwt-decode": "^2.2.1", "j
import * as jwt_ from 'jwt-decode';
库的package.json有以下行
"dependencies": {
"@types/jwt-decode": "^2.2.1",
"jwt-decode": "^2.2.0"
}
虽然组件库构建正确,但在为导入此库的应用程序提供服务时,会出现以下错误:
未找到模块:错误:无法解析“…/dist/myLibrary/fesm2015”中的“jwt解码”。
基本上,我如何导出一个包(我在库中安装了npm),使用组件库本身。我需要向库的public-api.ts文件添加任何内容吗?您必须将依赖项安装到使用该库的应用程序中。因此,您必须在应用程序中运行
npm install jwt decode
。没有办法解决此问题。我正在尝试将其抽象出来,因为只有组件需要它组件库,而不是单独的应用程序。它与Angular无关。npm就是这样工作的。你有一个对等依赖项,应用程序可能使用相同的库,但版本略有不同。因此,应用程序决定安装哪个库和哪个版本。你必须将依赖项安装到使用e库。所以你必须在应用程序中运行npm install jwt decode
。没有办法解决这个问题吗?我正试图从组件库中提取它,因为只有组件需要它,而不是单独的应用程序。它与Angular无关。这就是npm的工作方式。你有一个对等依赖关系,应用程序可能使用相同的l但版本略有不同。所以应用程序决定安装哪个库和哪个版本。