5

运行命令时

ng-packagr -p ng-package.json

我得到以下输出

Building Angular library
- - - skipped 8 lines - - -
Side effects in initialization of unused variable Cm [0:2339,29]
Side effects in initialization of unused variable Jm [0:2361,29]
Dropping duplicated definition of variable FO [0:11798,34]
Side effects in initialization of unused variable ES [0:13236,33]
- - - skipped 4 lines - - -
Built Angular library from MY_PROJECT_PATH written to MY_PROJECT_PATH/dist

我应该担心那些Side effectsDropping duplicated台词吗?我们在这里谈论什么样的副作用?

有趣的是,他们在几个版本之前并不存在。

在 SO 上搜索ng-packagr side effects,没有产生任何结果 - 我是唯一对此感兴趣的人吗?

4

1 回答 1

4
  1. 对于我的库,如果我仅在 JS 文件中查找错误“未使用变量初始化时的副作用 ...”,则正确的警告是该变量刚刚定义且未在 TS 中使用。删除未使用的变量后,警告已修复。
  2. 对于我的库的第二个警告“删除变量的重复定义......”,如果我使用“let”以相同的方法但不同的块作用域定义变量两次,则会发生这种情况,例如
testMethod(componentId: string){

 if (componentId) {
      let data = componentId; // Duplicate name but correct for TS
      data = 'test data';
      console.log(data);
    } else {
      let data = '234'; // Duplicate name but correct for TS
      data = '456';
      console.log(data);
    }
}

我想,由于范围不同,在“let”和“var”之间的“ng-packagr”中从 TS 到 JS 的转换并不是 100% 正确的。我的项目中没有第三个包,所以“peerDependencies”不应该是我警告的原因。

于 2018-08-20T12:02:21.793 回答