2016-11-02 55 views
2

我们具有角-CLI的β18角2 /角2 CLI/lodash功能没有发现

Error: Uncaught (in promise): TypeError: __WEBPACK_IMPORTED_MODULE_6_lodash__.find is not a function 

Lodash +类型被添加到的package.json得到的错误: -

"lodash": "4.14", 
"@types/lodash": "4.14.38", 

在角cli.json的脚本部分,我们必须

"../node_modules/lodash/lodash.js", 

我们现在正在进口lodash使用模块的引用: -

import * as _ from 'lodash';

编译scripts.bundle.js具有JavaScript的包括lodash。

有什么我忘记的吗?

谢谢!

回答

2

编辑不要添加到您的角cli.json文件脚本部分。这是不需要的!

你似乎有它在那里,只是为了确保,在这里与我怎么可以重现它的工作对我的项目之一步骤:

  • 停止当前ng serve
  • npm install lodash --savenpm install @types/lodash --save-dev
  • 在CONTROLER做你import * as _ from 'lodash';
  • 使用方法如下:console.log(_.chunk(['a', 'b', 'c', 'd'], 2));
  • ng serve再次
+0

问题是把它放在angular-cli.json中。我一直试图解决这个问题一天(它以前是工作的 - 我认为当我做了一个npm安装的时候,一些软件包版本被提升了,现在它不再适用于脚本部分的lodash了)。你能详细说明为什么在脚本部分不需要它吗?感谢您的帮助,您救了我的理智! :) –

+1

我对此没有任何出口,但我知道将其添加到脚本部分会将js库添加到角度应用程序的全局范围。这不适用于lodash。通常一个简单的npm安装,然后导入应该是它现在需要的所有角度cli使用webpack而不是systemjs了。 (请参阅https://github.com/angular/angular-cli#3rd-party-library-installation)很高兴您能够正常工作 – Riscie