首页 > 解决方案 > 找不到模块'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';

标签: javascriptangularionic-frameworkionic3

解决方案


你必须安装 PouchDB

npm install --save pouchdb

@types/pouchdb不是实际的模块。这只是打字稿的打字。你需要两个模块。


推荐阅读