Ionic 2 build 抱怨不能模块 lodash

Posted

技术标签:

【中文标题】Ionic 2 build 抱怨不能模块 lodash【英文标题】:Ionic 2 build complains about cannot module lodash 【发布时间】:2016-11-03 10:41:52 【问题描述】:

我在 Ionic v2 上,每次运行 ionic build android 时都会看到以下错误。

TypeScript 错误:/path/to/project/app/models/models.ts(1,20):错误 TS2307:找不到模块“lodash”。

看到这个错误,我真的没有任何副作用。例如,我的移动应用程序在浏览器、模拟器和设备中运行良好。但是,我想知道如何摆脱这个错误。

当我添加lodash 时,我必须输入以下命令。

npm install lodash --save 打字安装 lodash --save

ionic info 给了我以下信息。

科尔多瓦 CLI:6.2.0 Gulp 版本:CLI 版本 1.2.1 Gulp local:本地版本 3.9.1 离子框架版本:2.0.0-beta.8 Ionic CLI 版本:2.0.0-beta.32 离子应用程序库版本:2.0.0-beta.18 ios-部署版本:1.8.5 ios-sim 版本:5.0.7 操作系统:Mac OS X El Capitan 节点版本:v4.3.1 Xcode 版本:Xcode 7.3.1 构建版本 7D1014

关于我的开发工具版本的其他信息。

节点 4.3.1 npm 3.8.6 gulp CLI 1.2.1,本地 3.9.1 科尔多瓦 6.2.0 鲍尔 1.7.9 tsc 1.8.10

运行 npm list --depth=0 以下是我的依赖项。

├── @angular/common@2.0.0-rc.2 ├── @angular/compiler@2.0.0-rc.2 ├── @angular/core@2.0.0-rc.2 ├── @angular/http@2.0.0-rc.2 ├── @angular/platform-b​​rowser@2.0.0-rc.2 ├── @angular/platform-b​​rowser-dynamic@2.0.0-rc.2 ├── @angular/router@2.0.0-rc.2 ├── del@2.2.0 ├── es6-shim@0.35.1 ├── gulp@3.9.1 ├── gulp-watch@4.3.5 ├── ionic-angular@2.0.0-beta.8 ├── ionic-gulp-browserify-typescript@1.1.0 ├── ionic-gulp-fonts-copy@1.0.0 ├── ionic-gulp-html-copy@1.0.0 ├── ionic-gulp-sass-build@1.0.0 ├── ionic-gulp-scripts-copy@2.0.0 ├── ionic-native@1.2.4 ├── ionicons@3.0.0 ├── lodash@4.13.1 ├── 反射元数据@0.1.3 ├── 运行序列@1.1.5 ├── rxjs@5.0.0-beta.6 └── zone.js@0.6.12

【问题讨论】:

+1 我注意到了同样的问题。 jquery 也会发生:TypeScript error: Error TS2307: Cannot find module 'jquery'. 【参考方案1】:

我是根据this answer 算出来的。无论出于何种原因,编译器都会抱怨,因为它找不到lodash(在我的情况下是jquery)的类型定义。

为了解决这个问题,我只是在我的 app.ts 文件的第一行添加了一个对我的类型的三斜杠引用:

/// <reference path="../typings/index.d.ts" />

所有的错误都消失了。

【讨论】:

我不得不修改typings/main.d.ts 来添加引用。 部分问题是我使用的是旧版本的typings,它在main.d.ts 中生成代码。然后我升级了我的typings,现在引用放在index.d.ts

以上是关于Ionic 2 build 抱怨不能模块 lodash的主要内容,如果未能解决你的问题,请参考以下文章

Ionic 2: - prod文件未编译错误:build prod failed:无法确定类HomePage的模块

Ionic Cordova Build prod:找不到模块“。” - 打字稿版本>3

Ionic 3:在“prod”模式下构建:找不到模块“。”

Ionic Cordova Build Android 期间面临错误

Ionic React App IOS Build 失败“配置文件”

安装了带电容器的条形码扫描仪插件,pwa 抱怨 cordova 不可用