제 코드에서 도움이 될 수 있습니다. 내 웹 응용 프로그램에 색인화를 사용하고, 나는 두 objectStore 만들었습니다 - companyToCall 은 - auto_increment 키를 사용하여 IndexedDB에서 객체를 삭제할 수 없습니다.
모두 (내가 만든 한 JS에서 사용자 정의 클래스) 회사 객체를 포함
을 companyCalled. 예를 들어 당신이 ID를 25 이후 회사를 삽입,databaseOpeningRequest.onupgradeneeded = function(event)
{
db = event.target.result;
db.createObjectStore('companyToCall', { autoIncrement: true }).createIndex("id", "id", { unique: true});
db.createObjectStore('companyCalled', { autoIncrement: true }).createIndex("id", "id", { unique: true});
}
나는 데이터베이스에 삽입의 순서를 기억하고 싶어하기 때문에 DB의 핵심으로 Company.id를 사용하지하기로 결정했습니다 다음은 스키마를 간다 20 번, 30 번 키가 필요합니다. 회사 25 -> 1/회사 20 -> 2/회사 30 -> 3
이러한 회사는 모두 CompanyToCall 저장소에 처음 삽입됩니다. 내가 CompanyCalled 저장소에 넣고 CompanyToCall 저장소에서 삭제하려고합니다.
불행히도 CompanyToCall 저장소에서 삭제가 작동하지 않아 그 이유를 알 수 없습니다. 여기 은 삭제입니다 :
var removeCompanyFromToCallStorage = function(company)
{
if (activateLocalStorage)
{
var requete = db.transaction(['companyToCall'], 'readwrite').objectStore('companyToCall').delete(company.getId());
requete.onsuccess = function(e)
{
console.log('worked');
};
}
};
내가 가진 내 콘솔에서 "작업"하지만 난 내 DB를 확인하고있을 때 나는 아직도
(등 등 새로 고침 후) 잘못된 저장소에이 회사를 볼 수 있습니다 누구 아이디어가 있습니까?