Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 重新排列Dexie-Json样缝合结构_Javascript_Dexie - Fatal编程技术网

Javascript 重新排列Dexie-Json样缝合结构

Javascript 重新排列Dexie-Json样缝合结构,javascript,dexie,Javascript,Dexie,我的问题集中在Dexie库上,但我想它对javascript中的每一个类似json的结构都是有效的,所以这里是: 我有多个由IndexedDB库(Dexie)在本地内存上创建的表,每次添加记录时,该库都使用以下结构: db.transaction('rw', db.table1, db.table2, ... , function() { db.table1.add({ field101: value101, field102: value10

我的问题集中在Dexie库上,但我想它对javascript中的每一个类似json的结构都是有效的,所以这里是:

我有多个由IndexedDB库(Dexie)在本地内存上创建的表,每次添加记录时,该库都使用以下结构:

    db.transaction('rw', db.table1, db.table2, ... , function() {
      db.table1.add({
        field101: value101,
        field102: value102,
        field103: value103,
        field104: value104,
        field105: value105,
        field106: value106,
        field107: value107,
        field108: value108,
        field109: value109,
        field110: value110,
        field111: value111
      });
      db.table2.add({
        field201: value201,
        field202: value202,
        field203: value203,
        field204: value204,
        field205: value205
      });
      .
      .
      .
    });
当我想要修改数据时,代码如下所示:

    db.transaction('rw', db.table1, db.table2, ... , function() {
      bbdd.table1.where("value101").equals(x).modify({
        field102: value102,
        field103: value103,
        field104: value104,
        field105: value105,
        field106: value106,
        field107: value107,
        field108: value108,
        field109: value109,
        field110: value110,
        field111: value111
      });
      bbdd.table2.where("value201").equals(x).modify({
        field202: value202,
        field203: value203,
        field204: value204,
        field205: value205
      });
      .
      .
      .
    });
我想减少代码,使其在这些结构中只使用一次。如果只有2张桌子就可以了,但是大约有12张,占用了很多空间(而且当某些东西发生变化时,必须改变两次)

由于代码大致相同,我考虑添加一个变量,该变量将包括add或modify括号内的所有这些字段,但我不确定如何做到这一点。此外,在修改代码中,不包括每个表的第一个值(在修改条件中使用)

我也考虑过javascript函数,但再一次——我不确定在这种情况下如何实现它

有什么建议吗


非常感谢

这里的JSON在哪里?我建议您简化您的数据库结构我编写JSON只是为了让它更清晰。至于数据库结构,没有办法,我需要所有这些细节。只是想减少冗余。谢谢