我正在为angular 2做一个组件库,并与我的Angular2 webpack应用程序进行了npm链接。当我没有链接库它可以工作,但在我做一个npm链接并运行应用程序后,我得到以下错误。有问题的提供者是来自这个链接库的提供者,因为我调用函数来获取数组并使用它...数据。错误发生在每个提供商上,显然是因为我逐个删除它们,每次下一个提交错误。同样,只有在链接库时才会发生此错误。
Uncaught无效的提供者 - 只允许Provider和Type的实例,得到:[object Object]
答案 0 :(得分:2)
似乎Angular 2检查提供者是否是其基本提供者的实例。
当你有一个模块导入它自己的angular2实例时,提供者实例从Module angular2版本/实例扩展。但主应用程序使用自己的angular2版本/实例,因此它会检查提供程序是否由基本提供程序从其自己的angular 2实例扩展。
所以这是一个Angular 2 bug。但目前还不清楚它何时会被修复。在那之前你应该在我之前的评论中遵循我的建议,并在库中完成更改时“npm unlink”和“npm install”(或从链接库中删除“node_modules”文件夹)