【发布时间】:2020-09-14 04:10:12
【问题描述】:
我创建了一个包含两个 Angular 库的 Angular 项目。你可以找到源代码here。之后,我构建了每个库并通过 npm 共享生成的 dist 文件夹。这是包裹:https://www.npmjs.com/package/@agilie/angular-helpies。
之后,我尝试使用这个库中的拦截器并像这样导入它
import {DuplicateRequestFilter} from '@agilie/angular-helpies/interceptors';
在开发模式下一切正常,但是当我尝试在生产模式下构建项目时出现错误
ERROR in ./src/app/app.module.ngfactory.js
Module not found: Error: Can't resolve 'interceptors' in '/Users/sergey/libs/test-helpies/src/app'
resolve 'interceptors' in '/Users/sergey/libs/test-helpies/src/app'
Parsed request is a module
using description file: /Users/sergey/libs/test-helpies/package.json (relative path: ./src/app)
Field 'browser' doesn't contain a valid alias configuration
resolve as module
looking for modules in /Users/sergey/libs/test-helpies/
using description file: /Users/sergey/libs/test-helpies/package.json (relative path: .)
Field 'browser' doesn't contain a valid alias configuration
using description file: /Users/sergey/libs/test-helpies/package.json (relative path: ./interceptors)
no extension
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/interceptors doesn't exist
.ts
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/interceptors.ts doesn't exist
.tsx
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/interceptors.tsx doesn't exist
.mjs
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/interceptors.mjs doesn't exist
.js
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/interceptors.js doesn't exist
as directory
/Users/sergey/libs/test-helpies/interceptors doesn't exist
/Users/sergey/libs/test-helpies/src/app/node_modules doesn't exist or is not a directory
/Users/sergey/libs/test-helpies/src/node_modules doesn't exist or is not a directory
/Users/sergey/libs/node_modules doesn't exist or is not a directory
/Users/sergey/node_modules doesn't exist or is not a directory
/Users/node_modules doesn't exist or is not a directory
/node_modules doesn't exist or is not a directory
looking for modules in /Users/sergey/libs/test-helpies/node_modules
using description file: /Users/sergey/libs/test-helpies/package.json (relative path: ./node_modules)
Field 'browser' doesn't contain a valid alias configuration
using description file: /Users/sergey/libs/test-helpies/package.json (relative path: ./node_modules/interceptors)
no extension
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/node_modules/interceptors doesn't exist
.ts
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/node_modules/interceptors.ts doesn't exist
.tsx
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/node_modules/interceptors.tsx doesn't exist
.mjs
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/node_modules/interceptors.mjs doesn't exist
.js
Field 'browser' doesn't contain a valid alias configuration
/Users/sergey/libs/test-helpies/node_modules/interceptors.js doesn't exist
as directory
/Users/sergey/libs/test-helpies/node_modules/interceptors doesn't exist
[/Users/sergey/libs/test-helpies/interceptors]
[/Users/sergey/libs/test-helpies/interceptors.ts]
[/Users/sergey/libs/test-helpies/interceptors.tsx]
[/Users/sergey/libs/test-helpies/interceptors.mjs]
[/Users/sergey/libs/test-helpies/interceptors.js]
[/Users/sergey/libs/test-helpies/src/app/node_modules]
[/Users/sergey/libs/test-helpies/src/node_modules]
[/Users/sergey/libs/node_modules]
[/Users/sergey/node_modules]
[/Users/node_modules]
[/node_modules]
[/Users/sergey/libs/test-helpies/node_modules/interceptors]
[/Users/sergey/libs/test-helpies/node_modules/interceptors.ts]
[/Users/sergey/libs/test-helpies/node_modules/interceptors.tsx]
[/Users/sergey/libs/test-helpies/node_modules/interceptors.mjs]
[/Users/sergey/libs/test-helpies/node_modules/interceptors.js]
@ ./src/app/app.module.ngfactory.js 14:0-35 15:1945-1970
@ ./src/main.ts
@ multi ./src/main.ts
您可以使用此演示项目重现错误:https://github.com/SergeyMell/test-helpies
我做错了什么?任何帮助表示赞赏。
更新
Field 'browser' doesn't contain a valid alias configuration 中的答案似乎提供了解决方案,如何修复使用应用程序中实际损坏的包。据我了解,在我的情况下,我在构建或分发我的包时遇到了一些问题,因此应该解决这个问题。
【问题讨论】:
-
这个插件的任何文档?
-
检查了我在下面添加的内容?
-
该插件处于早期开发阶段,所以很遗憾我暂时没有提供任何文档。但是,用法非常简单——从
@agilie/angular-helpies/interceptors导入拦截器并在提供者之间使用它。 -
在下面添加了一些内容。看看?
-
我在这里使用了你的库:- stackblitz.com/edit/angular-aokp5u。没有错误。
标签: angular typescript npm