我们可以动态使用 set objectstore name 吗?

Posted

技术标签:

【中文标题】我们可以动态使用 set objectstore name 吗?【英文标题】:Can we use set objectstore name dynamically? 【发布时间】:2021-09-15 23:50:37 【问题描述】:

我在我的应用程序中使用 Dixie.js,下面是创建数据库和对象存储的一段代码

import Dexie from "dexie";

const db = new Dexie("sampledb");
db.version(1).stores( tasks: "++id" );

代替硬编码的表/对象存储名称任务,我们可以使用一些变量的值,如下所示

const sessionId = "SEEE-123456";
db.version(1).stores( sessionId: "++id" );

在他们的官方文档中找不到任何选项。我将不胜感激任何帮助/输入。

谢谢!

【问题讨论】:

[变量]: "++id" 【参考方案1】:

在现代 javascript 中,您可以使用动态属性名称声明对象:

const tableName = "yourDynamicTableName";
db.version(1).stores( [tableName]: "++id" );

【讨论】:

以上是关于我们可以动态使用 set objectstore name 吗?的主要内容,如果未能解决你的问题,请参考以下文章

CEPH OBJECTSTORE API介绍

填充许多 ObjectStore 时的 IndexedDB,错误:无法在“IDBDatabase”上执行“事务”:版本更改事务正在运行

ceph-objectstore-tool工具

数据库_MysqlMySQL动态语句 if set choose where foreach trim

vue.set动态新增对象属性,触发dom渲染

动态生成 LINQ 查询