Dexie - 检查记录是否存在,如果不存在则将其初始化

Dexie - 检查记录是否存在,如果不存在则将其初始化

问题描述:

我在Angular2项目中实施Dexie 2.0。Dexie - 检查记录是否存在,如果不存在则将其初始化

我有一个简单的表,应该只包含一个记录用于命令命名。

我要做的就是检查IndexedDb,如果表中有记录,如果没有,则初始化它...非常简单。

这是代码:

this.OrderCounter.toArray().then(function (arr) { 
     if (arr.length == 1) { 
      console.log('Do nothing'); 
     } 
     else { 
      console.log('Initialize Counter');   
      this.OrderCounter.add(1);   
     } 
     }); 

在这一瞬间表是空的,如果我运行该脚本,我得到“没有定义”上初始化记录行命令

我必须改变什么?

谢谢支持

它的this在JavaScript的本质,这是问题。尝试用箭头函数(arr) => { ... }代替function (arr) { ... },并且您的this指针将坚持您的类实例。

+0

谢谢David ...你永远珍贵... Dexie组件在我的第一个实现本地存储的项目中工作得很好... – DarioN1