TypeError:pouchdb_1.default不是构造函数

时间:2017-08-21 20:49:48

标签: typescript pouchdb

我之前在基于浏览器的项目上使用过PouchDB,一切都很好,但是在新的节点项目中,无论我如何导入模块,我都会收到此错误

Pouchdb 6.3.4 + @ types / pouchdb

var q = from u in db.User
        join ua in db.UserActions on { u.Id, "Approved" } equals { ua.UserId, ua.ActionType } into actions
        from ua in action.DefaultIfEmpty()
        where u.Active
        select new { User = u, Actions = ua}

结果代码:

import PouchDB from 'pouchdb';
this.userDB = new PouchDB('db');
//TypeError: pouchdb_1.default is not a constructor

我试图以所有可能的方式导入(import =,const =,import * as,import {})

回答(感谢Mustansir Zia)

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const pouchdb_1 = require("pouchdb");
this.userDB = new pouchdb_1.default('db')

3 个答案:

答案 0 :(得分:2)

来自PouchDB' npm

var PouchDB = require('pouchdb');
var db = new PouchDB('my_db');

让我们看看它是否能够使用require。在这种情况下,Babel不必将.default附加到它。

答案 1 :(得分:0)

我在devDependencies部分的package.json中添加了@types/pouchdb": "^6.3.2"

答案 2 :(得分:0)

我的解决方案是安装打字:

npm i -D @types/pouchdb

并按照以下步骤导入:

import * as PouchDB from 'pouchdb';

一切正常之后:

this.db = new PouchDB('my_db');