javascript - 找不到模块'pouchdb',适用于mac,但不适用于windows
问题描述
我正在接管一个适用于我的 mates mac 的离子项目。清洁安装了 ionic/cordova/python 的 windows 10 PC。项目运行,但出现以下错误。我尝试了多种在项目中包含 pouchdb 的不同方法(使用 @types/ 使用旧版本,使用 require 而不是导入、删除和重新安装节点模块等),但我找不到任何解决此错误的方法。我已经恢复了我所做的所有更改。以下代码适用于我的 mates mac。
我也刚刚和他核实了版本。我正在运行所有相同版本的 node/python/ionic 等。
包.json
{
"name": "camara2",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "http://ionicframework.com/",
"private": true,
"scripts": {
"clean": "ionic-app-scripts clean",
"build": "ionic-app-scripts build",
"lint": "ionic-app-scripts lint",
"ionic:build": "ionic-app-scripts build",
"ionic:serve": "ionic-app-scripts serve"
},
"dependencies": {
"@angular/common": "5.0.0",
"@angular/compiler": "5.0.0",
"@angular/compiler-cli": "5.0.0",
"@angular/core": "5.0.0",
"@angular/forms": "5.0.0",
"@angular/http": "5.0.0",
"@angular/platform-browser": "5.0.0",
"@angular/platform-browser-dynamic": "5.0.0",
"@ionic-native/camera": "^4.11.0",
"@ionic-native/core": "4.3.2",
"@ionic-native/splash-screen": "4.3.2",
"@ionic-native/status-bar": "4.3.2",
"@ionic/storage": "2.1.3",
"@types/pouchdb": "6.3.2",
"ajv": "^6.0.0",
"cordova-android": "^6.2.3",
"cordova-browser": "^4.1.0",
"cordova-ios": "^4.4.0",
"cordova-plugin-camera": "^2.4.1",
"cordova-plugin-compat": "^1.2.0",
"cordova-plugin-console": "^1.1.0",
"cordova-plugin-device": "^1.1.7",
"cordova-plugin-splashscreen": "^4.1.0",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"cropperjs": "^1.4.1",
"ionic": "^4.6.0",
"ionic-angular": "3.9.2",
"ionic-plugin-keyboard": "^2.2.1",
"ionicons": "3.0.0",
"json-circular-stringify": "0.0.1",
"mrz": "^3.1.0",
"newtondev-mrz-parser": "^1.1.0",
"rxjs": "5.5.2",
"sw-toolbox": "3.6.0",
"tesseract.js": "^1.0.10",
"zone.js": "0.8.18"
},
"devDependencies": {
"@ionic/app-scripts": "3.2.1",
"@ionic/lab": "1.0.6",
"typescript": "2.4.2"
},
"description": "An Ionic project",
"cordova": {
"plugins": {
"cordova-plugin-device": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-statusbar": {},
"cordova-plugin-whitelist": {},
"ionic-plugin-keyboard": {},
"cordova-plugin-camera": {},
"cordova-plugin-console": {}
},
"platforms": [
"android",
"browser",
"ios"
]
}
}
进口
//import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Http, Headers, HttpModule } from '@angular/http';
import PouchDB from 'pouchdb';
import 'rxjs/add/operator/map';
解决方案
你必须安装 PouchDB
npm install --save pouchdb
@types/pouchdb
不是实际的模块。这只是打字稿的打字。你需要两个模块。
推荐阅读
- apache - 反向代理和网络服务器有什么区别?
- java - 从命令行运行时混合 java 和 kotlin 代码的 ClassNotFoundException
- html - Html5电影插入html作为背景?
- python - 给定代表四边形的 4 个顶点,我如何将其分成 N 个部分?
- android - View Model 不断创建 Live Data 的实例
- php - 自定义 PHP 文件的 Wordpress JQuery 问题
- javascript - 如何与 Cheerio 完全匹配
- c++ - How to read raw input in cpp
- c# - Denying repetitions of same random sequences
- regular-language - 自动机到正则表达式