如何将数据传递到SQLite数据库

如何将数据传递到SQLite数据库,sqlite,angular,typescript,ionic-framework,Sqlite,Angular,Typescript,Ionic Framework,您好:)我对编程非常陌生,最近我启动了一个IONIC应用程序。但是我被卡住了。我想做一些类似于电话簿的事情,在这里您可以获得随机的JSON联系人,并将他们保存到您的sqlite数据库中 我明白了: import { Storage ] from '@ionic/storage'; @component({ selector: 'page-home' templateUrl: 'home.html' }); export class HomePage {

您好:)我对编程非常陌生,最近我启动了一个IONIC应用程序。但是我被卡住了。我想做一些类似于电话簿的事情,在这里您可以获得随机的JSON联系人,并将他们保存到您的sqlite数据库中

我明白了:

import { Storage ] from '@ionic/storage';
    @component({
        selector: 'page-home'
        templateUrl: 'home.html'
});

export class HomePage {

  posts: any;
  persons: any;

constructor(public navCtrl: NavController, public http: Http, public storage: Storage) {

  this.http.get('https://jsonplaceholder.typicode.com/users').map(res=> res.json()).subscribe(data => {
  this.posts = data;
 });

}

//here i would like to recieve the data from the tapped Item

  setData(){
    console.log();
        this.storage.set('myData', this.posts);
        console.log(this.posts);
  };


  getData(){
     this.storage.get('myData').then((data) => {
       if (data !=null){
         console.log(data);
       }
    })
  };
}
以下是视图: 当我单击/点击save按钮时,我希望将这些值存储在我的sqlite数据库中,并在我的“本地联系人”中显示它们


    {{post.name}
    {{post.username},{{{post.email}

    电话:{{post.phone}

      设置数据
也许有人遇到过类似的问题,可以帮我解决这个问题。
谢谢:)

使用Ionic处理持久存储的最佳方法是使用

Ionic Storage是由Ionic团队创建和维护的一个包,用于从每个浏览器或平台的具体情况中提取开发内容,并自动使用可用的最佳存储解决方案


1.安装依赖项 对于SQLite,首先需要安装Angular和Cordova的依赖项:

npm安装@ionic/storage——保存

cordova插件添加cordova sqlite存储——保存

然后在
src/app/app.module.ts
中编辑NgModule声明,将
IonicStorageModule
添加为导入:

从'@ionic/storage'导入{IonicStorageModule};
@NGD模块({
声明:[……],
进口:[
IonicModule.forRoot(MyApp),
IonicStorageModule.forRoot({
名称:''\u mydb',
driverOrder:['indexeddb','sqlite','websql'],
})
],
引导:[…],
入口组件:[……],
提供者:[……],
})
导出类AppModule{}

2.将存储注入组件
3.在SQLite中存储数据 无论何时访问存储,请确保始终将代码包装为以下内容:

storage.ready().then(() => { /* code here safely */});
3.1保存键值对 3.2检索值 3.3删除键值对
谢谢你的回答:)这很有帮助,但并不完全是我想要的。也许我的描述太不准确了。我把所有的步骤都减到了3。问题是,我不知道如何访问抽头项的数据。当我点击单个联系人时,我希望将此特定联系人的对象发送到saveContact()函数。很抱歉,您的问题有点误导,也许您应该修改OP,以便更好地向未来的读者传达您的问题。现在,为了将特定的contact对象传递到setData()函数中,只需将代码更改为以下
Set Data
post
已在*ngFor中定义,因此您可以将其用作函数调用的参数。如果这回答了你的问题,请投票支持评论和原始答案。是的,这就是我想要的答案。非常感谢你。由于某种原因,我不能对你的评论和答案投反对票,因为我没有足够的声誉。当我获得15个声誉时,我会这么做;)很高兴我能帮忙,巴德
import { Component } from '@angular/core';
import { Storage } from '@ionic/storage';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {
  constructor(public storage: Storage) {}
}
storage.ready().then(() => { /* code here safely */});
storage.ready().then(() => {
    storage.set('some key', 'some value');
});
storage.ready().then(() => {
  storage.get('age').then((val: string) => {
      console.log('Your age is', val);
  });
});
storage.ready().then(() => {
    storage.remove('key').then((key: string) => { /* do something after deletion */})
});