首页 文章

将ng-packagr生成的包与Angular CLI app集成:找不到模块

提问于
浏览
0

这是一个重现它的回购: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 回答

  • 0

    我找到了罪魁祸首:在公共api文件中,我有:

    export * from './src/modules/logging/logger';

    访问index.ts .

    当我用显式导出替换它时:

    export * from './src/modules/logging/logger/logger.service';
    export * from './src/modules/logging/logger/log-level.enum';
    

    然后它工作 . 但现在的问题是:任何想法为什么?因为我不知道 .

相关问题