0

我们有一个 Angular 5 沙盒应用程序,其中处理了我想在其他应用程序中重用的组件,以及一个模拟这些组件在真实应用程序中的集成的演示组件。

我们按照建议使用 ng-packagr 在我们的 lib 文件夹中构建组件,以便我们可以在其他应用程序中将它们作为 npm 包重用。

一切正常,直到一次提交使 ng-packgr build 在运行时生成错误:未提供从组件构造函数调用的所有服务。

错误类型错误:无法读取未定义的属性“someObs$”

其中 someObs$ 是在 Component 的构造函数中调用的服务的可观察对象:

constructor(protected someService: SomeService) {
    this.someService.someObs$.subscribe(() => {
      // ...
    });
  }

在这个提交中没有什么重要的,更重要的是对服务提供架构、模块等没有任何影响。

当然,我所有的提供者都是正确的,因为错误只发生在 ng-packgr build 而不是 ng serve local development。

编辑:更新了与 ng-packagr 构建过程相关的问题

4

0 回答 0