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

时间:2018-01-19 16:09:57

标签: angular angular-cli ng-packagr

这是一个重现它的回购:https://github.com/dragonflypl/ng-packagr-issue

  1. 我创建了一个简单的包loggingnpm run build生成库+ npm pack
  2. 然后我使用Angular CLI生成fooGui并通过安装tgz的npm run consume安装库
  3. npm run build投放fooGui投掷:
  4.    ./src/app/app.component.ngfactory.js中的错误找不到模块:错误:   无法解决&logging / src / modules / logging / logger / index'在   ' C:\ XXX \ dev的\ NG-packagr发出\ fooGui的\ src \ APP'解决   '记录/ SRC /模块/记录/记录器/索引'在   ' C:\ XXX \ dev的\ NG-packagr发出\ fooGui的\ src \ APP'解析请求是一个   模块使用描述文件:   C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ package.json(相对路径:   ./src/app)       Field'浏览器'使用描述文件后,不包含有效的别名配置:   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)             Field'浏览器'不包含有效的别名配置           使用描述文件后: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)               没有延期                 Field'浏览器'不包含有效的别名配置                 C:\ XXX \ dev的\ NG-packagr发出\ fooGui \ node_modules \登录的\ src \模块\日志\记录\指标   不存在               .TS                 Field'浏览器'不包含有效的别名配置                 C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules \ logging \ src \ modules \ logging \ logger \ index.ts不存在               .js文件                 Field'浏览器'不包含有效的别名配置                 C:\ XXX \ dev \ ng-packagr-issue \ fooGui \ node_modules \ logging \ src \ modules \ logging \ logger \ index.js不存在               作为目录                 C:\ XXX \ dev的\ NG-packagr发出\ fooGui \ node_modules \登录的\ src \模块\日志\记录\指标   不存在

    知道我做错了什么,或者某个地方出现了错误?

1 个答案:

答案 0 :(得分: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';

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