我正在尝试使用lodash uniqBy函数来过滤我的Angular 2应用程序。但是,我在导入语句 import *中收到错误,因为_来自'lodash'; 。我尝试了 import _ from'lodash'; , import _ from'lodash / lodash'; , import * as _ from'lodash / lodash'; 也,但得到同样的错误,即找不到模块'lodash'。检查angular2 failing lodash import和Importing lodash into angular2 + typescript application后,我将lodash映射到我的system.config,如此
<script>
System.config({
packages: {
app: {
format: 'register',
defaultExtension: 'js'
}
},
map: {
lodash: 'node_modules/lodash/lodash.js'
}
});
System.import('app/main')
.then(null, console.error.bind(console));
</script>
我还将lodash添加到我的package.json文件中的依赖项中,如此
"dependencies": {
"angular2": "2.0.0-beta.15",
"systemjs": "0.19.26",
"es6-shim": "^0.35.0",
"reflect-metadata": "0.1.2",
"rxjs": "5.0.0-beta.2",
"zone.js": "0.6.10",
"bootstrap": "^3.3.6",
"lodash":"^4.13.1"
}
请分享您对此处可能出现的问题的看法。
答案 0 :(得分:0)
事实上,TypeScript应用程序有两个部分:
通过在SystemJS配置中引用Lodash库,您只能处理执行部分。您的错误来自编译部分,因为您错过了为Lodash库安装打字。
您可以尝试以下方法:
$ typings install lodash --ambient