Angular-cli:找不到模块:错误:无法解析'PouchDB'

时间:2016-12-22 09:40:56

标签: angular webpack angular-cli pouchdb

OS?

  

Linux(Amazon Linux AMI)

版本。

angular-cli: 1.0.0-beta.22-1
node: 6.6.0
os: linux x64

Repro步骤。

我最近安装了PouchDB:

npm i pouchdb --save
npm i @types/pouchdb --save-dev

我在 typings.d.ts

中添加了此内容
declare module 'PouchDB';

现在我在我的服务中导入PouchDB:

import * as PouchDB from 'PouchDB';

嗯,我的笔记本电脑(MacOS Sierra)都很好; ng serveng build没有问题,PouchDB运行良好。

但是......我的服务器(Amazon Linux AMI)不一样......

我在尝试执行ng build时遇到下一个错误:

ERROR in ./src/app/pictures.service.ts
Module not found: Error: Can't resolve 'PouchDB' in '/home/aral/project/src/app'
 @ ./src/app/pictures.service.ts 11:0-35
 @ ./src/app/app.module.ts
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi main

我的笔记本电脑中有相同的angular-cli版本和节点版本......

我比较了我的笔记本电脑和服务器中的tree命令,两者都有相同的文件。 (node_modules)中的某些子依赖项除外。

谢谢!

GitHub中报告的问题:https://github.com/angular/angular-cli/issues/3698

2 个答案:

答案 0 :(得分:2)

我在我的笔记本电脑中使用Mac,这就是我的笔记本电脑没有这个问题的原因:因为Mac主文件系统是不敏感的。 Linux并不那么宽容。因此,从PouchDB导入系统正在寻找一个node_modules名称PouchDB,但它确实命名为pouchdb(小写)。

答案 1 :(得分:0)

检查 package.json 文件中是否包含 pounchbd 依赖项, 如果未包含,则添加此依赖项 "pouchdb": "^7.2.2" 并运行 npm install