2017-07-18 8 views
1

私はIonic 3、Angular 4、Pouchdb、Pouchdb-findを使用しています Pouchdbは問題ありません。私は、NPMを経てここにdb.createIndexは関数ではありません

NPM

ionic start testapp 
npm install pouchdb 
npm install pouchdb-find 
ionic serve -l 

を再現する

の手順をpouchdbとpouchdb-見つけるの両方をインストールしている は空白イオン3テンプレート

import { Component } from '@angular/core'; 
import { NavController } from 'ionic-angular'; 
import { Http } from '@angular/http'; 
import 'rxjs/add/operator/map'; 
import PouchDB from 'pouchdb'; 
declare var require: any; 


@Component({ 
    selector: 'page-home', 
    templateUrl: 'home.html' 
}) 
export class HomePage { 

    constructor(public navCtrl: NavController) { 


    PouchDB.plugin(require('pouchdb-find')); 

    var db = new PouchDB('pillsalarm3'); 

    db.createIndex({ 
     index: {fields: ['type']} 
    }); 
    }   
} 
を使用して、私のコンポーネントの簡単です

私はこのエラーが発生します:

Uncaught (in promise): TypeError: db.createIndex is not a function TypeError: db.createIndex is not a function at new HomePage (http://localhost:8101/build/main.js:57:12) at createClass (http://localhost:8101/build/vendor.js:11251:26) at createDirectiveInstance

答えて

1

私は同じ問題を抱えていました。これは、ES6モジュールとしてバンドルされていて、デフォルトの書き出しがあるからです。

PouchDB.plugin(require('pouchdb-find').default);となります。また :

import findPlugin from "pouchdb-find"; 
PouchDB.plugin(findPlugin); 

がまた素晴らしい:)

+0

こんにちは、動作します。どうもありがとう。解決しましたが、別のエラーが発生しました。これは今私が得るものです。 ランタイムエラー TypeError:Object(...)は関数ではありませんTypeError:http:// localhost:8100/build/vendor.jsのObject(...)関数が関数ではありません: 145934:101 at t.invoke –

関連する問題