嗨,大家好,我对Ionic 2全新,
但我知道js / ts以及所有有趣的东西。现在我想在我的离子应用程序中使用PouchDb,这是我的home.ts文件:
import { Component } from '@angular/core';
import * as PouchDB from 'pouchdb';
import cordovaSqlitePlugin from 'pouchdb-adapter-cordova-sqlite';
@Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
}
PouchDB.plugin(cordovaSqlitePlugin);
var db = new PouchDB('test', { adapter: 'cordova-sqlite' });
function setData(data) {
var todo = {
title: data,
completed: false
};
db.post(todo, function callback(err, result) {
if (!err) {
console.log('Successfully posted a todo!');
}
});
}
function getData() {
console.log(db.allDocs);
}
这是我的第一个问题var db = new PouchDb....
当我输入启动功能时没有功能我得到一个错误因为我的" setData"功能不知道" db"是。我该如何解决这个问题?我的导入内容是对的吗?
下一个问题我是否必须在我的app.module.ts文件中导入这些内容?我需要提供者吗?
import { NgModule, ErrorHandler } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { MyApp } from './app.component';
import { AboutPage } from '../pages/about/about';
import { ContactPage } from '../pages/contact/contact';
import { HomePage } from '../pages/home/home';
import { TabsPage } from '../pages/tabs/tabs';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
@NgModule({
declarations: [
MyApp,
AboutPage,
ContactPage,
HomePage,
TabsPage
],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp),
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
AboutPage,
ContactPage,
HomePage,
TabsPage
],
providers: [
StatusBar,
SplashScreen,
{provide: ErrorHandler, useClass: IonicErrorHandler}]
})
export class AppModule {}
我认为这就是现在的一切。谢谢你的帮助
答案 0 :(得分:-1)
首先,您需要安装SQLite提供程序。 以下是使用SQLite作为数据库设置PouchDb In Ionic的教程。
https://gonehybrid.com/how-to-use-pouchdb-sqlite-for-local-storage-in-ionic-2/
如果您需要更多帮助,请发表评论,我会改进答案。