这是一个重现它的回购:https://github.com/dragonflypl/ng-packagr-issue
-
我创建了一个简单的包
logging
.npm run build
生成库做npm pack
-
然后我使用Angular CLI生成
fooGui
并通过安装tgz的npm run consume
安装库 -
从
fooGui
运行npm run build
抛出:
./src/app/app.component.ngfactory.js中的错误找不到模块:错误:无法解析'C:\ XXX \ dev \ ng-中的'logging / src / modules / logging / logger / index'在'C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ src \ app'中的packagr-issue \ fooGui \ src \ app'resolution'logging / src / modules / logging / logger / index'Parsed request是一个模块使用描述文件:C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ package.json(相对路径:./ src / app)字段'browser'在使用描述文件后不包含有效的别名配置:C :\ XXX \ dev \ ng-packagr-issue \ fooGui \ package.json(相对路径:./ src / app)解析为模块C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ src \ app \ node_modules不存在或不是目录C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ src \ node_modules不存在或不是目录C:\ XXX \ dev \ ng-packagr-issue \ node_modules不存在或不是目录C:\ XXX \ dev \ node_modules不存在或不是目录C:\ XXX \ node_modules不存在或不是目录C:\ node_modules不存在或不是一个目录使用描述文件在C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules中查找模块:C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ package.json(相对路径:./ node_modules )使用描述文件后,字段“浏览器”不包含有效的别名配置:C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ package.json(相对路径:./ node_modules)使用描述文件:C: \ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules \ logging \ package.json(相对路径:./ src / modules / logs / logger / index)无扩展字段'browser'不包含有效的别名配置C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules \ logging \ src \ modules \ logging \ logger \ index不存在.ts字段'browser'不包含有效的别名配置C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules \ logging \ src \ modules \ logging \ logger \ index.ts不存在.js字段'browser'不包含有效的别名配置C:\ XXX \ dev \ NG-packagr发出\ fooGui \ node_modules \登录的\ src \模块\日志\记录\指数 . js不存在,因为目录C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules \ logging \ src \ modules \ logging \ logger \ index不存在
知道我做错了什么或者某个地方是个bug吗?
1 回答
我找到了罪魁祸首:在公共api文件中,我有:
export * from './src/modules/logging/logger';
访问index.ts .
当我用显式导出替换它时:
然后它工作 . 但现在的问题是:任何想法为什么?因为我不知道 .