未捕获TypeError:useValue,useFactory,数据不可迭代! Angular 4 cli项目错误

时间:2017-07-25 10:31:12

标签: node.js angular phantomjs karma-runner casperjs

我是Angular 4的新手,我刚刚通过Angular Cli创建了一个项目,我收到了错误

ng new myprj 
 mkdir myprj 
 ng serve

enter image description here

我无法解决它。我安装并重新安装了cli,我只是想知道如何解决它。 我所做的只是

)

3 个答案:

答案 0 :(得分:2)

我通过将es6-shim添加到index.html文件中的脚本标记来解决问题:

<脚本> SRC = “https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.22.1/ ES6-shim.min.js” >< / s cript>

我在Travis部署期间运行ng test时遇到了同样的问题,即使它在本地执行时没有错误。

Chromium 37.0.2062 (Ubuntu 0.0.0) ERROR
Uncaught TypeError: useValue,useFactory,data is not iterable!
at http://localhost:9876/_karma_webpack_/polyfills.bundle.js:830

答案 1 :(得分:2)

如果浏览器缺少新功能,通常会发生此类错误。可以通过包含polyfills轻松修复

import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/weak-map';
import 'core-js/es6/set';

到您的供应商文件或文件,以便在您切换到karma.config.js时启动测试

   browsers: ['Chrome'] to browsers: ['PhantomJS']

运行 ng test

后出现此错误

答案 2 :(得分:1)

如果您的问题与我的问题相同,则需要转到项目中的polyfills.ts文件以启用向后兼容性。

注释中提到了多行要取消注释和要安装的包。其中一些是applcation在任何版本的IE上运行所必需的。

帮帮我。