0
나는 내 색인화 된 데이터베이스에 항목을 추가하는 기능이있다 : 이제 문서에 따라Dexie.dataError는() .add하기 위해 키를 전달할 때
const dbParams = {
// Update this when changing the db schema
dbVersion: 1,
// Database, object store names
databaseName: "CropViewConfigData",
datesConfigStoreName: "datesConfig"
};
// Create db instance
const db = new dexie(dbParams.databaseName);
// Define db schema
db.version(dbParams.dbVersion).stores({
// First param is primaryKey followed by indexes
[dbParams.datesConfigStoreName]: ",name, *fields"
});
// Open the database
db.open().catch(function(e) {
console.error("Failed opening indexedDb");
});
// Store a new configuration into the database
export async function storeDateConfig(name, fields) {
// Throw error if name is not defined
if (!name || name === "") {
throw new nameException("Config name is not valid");
}
// Throw error if no fields
if (!fields || fields.length < 0) {
throw new fieldsException("Fields data is not valid");
}
// Throw error if name already exists
const savedConfig = await db.datesConfig.get(name);
if (savedConfig) {
throw new nameException("Name already exists");
}
// Add data to db
await db.datesConfig.add({ fields: fields }, [name]);
}
, ",name, *fields"
는 기본 키가 어느 인바운드는 것을 의미한다 자동 증가, '필드'에는 키 배열 (*)이 포함됩니다.
.add
함수에 키를 전달할 수 있어야합니까?
message:"Failed to execute 'add' on 'IDBObjectStore': The object store uses in-line keys and the key parameter was provided." name:"DataError"
내가 잘못 뭐하는 거지 :
하지만이 오류는 무엇입니까?