У меня есть проблема с удаленной базой данных, чтобы сделать хранилище свободным. Я уже пробовал решение из этого How can I delete PouchDB Database indefinitly, to free space? и https://pouchdb.com/guides/compact-and-destroy.html, но это не решило мою проблему. Я уже использовал функцию compact() для очистки предыдущих пользовательских данных, но когда я пытался синхронизировать новые пользовательские данные, старые данные от другого пользователя не удаляются. Например, пользователь A имеет 3 данных, а пользователь B имеет 2 данных. Сначала я получаю данные от пользователя A, и я правильно получаю данные, которые представляют собой 3 данных. Затем, когда я хочу получить данные от пользователя B, я получаю 5 данных, которые означают, что данные от пользователя A не удаляются/удаляются. Ниже мой код:Как удалить базу данных в свободное хранилище в Pouchdb?
uuid.ts
retriveTaskRefNo(url, uuid, cb){
//get reference item based on uuid
HTTP.get(url+'/get_item', {uuid: uuid}, {})
.then(data => {
//call the function removeData() in uuid.ts
this.removeData(() => {
//save reference item
this.settingProvider.setInfo(data.data,() => {
cb();
});
})
})
}
//call the removeData() in itemProvider.ts
removeData(cb){
this.itemProvider.resetDB(() => {
});
}
itemProvider.ts
constructor(public http: Http, public settingProvider: SettingProvider) {
this.initializeTaskDB();
}
initializeTaskDB(){
this.db = new PouchDB('item');
console.log('Database created Success!');
}
//function to clear database
resetDB(cb){
if(this.sync){
console.log('Cancelling sync for InspectionTask due to removeData');
this.sync.cancel();
}
this.db.destroy().then(function (response) {
console.log('success delete inspection task');
this.initializeTaskDB();
}).catch(function (err) {
console.log('eror',err);
});
}
ли код неправильно. Пожалуйста, руководство меня
Извините за поздний ответ. Теперь я уже изменяю его с помощью destroy, и он работает. Но проблема в том, что когда я хочу повторно инициализировать эту ошибку, не могу прочитать свойство initializeTaskDB из null. Есть ли способ повторно инициализировать базу данных? – Akmal
Если вы уничтожаете один, вы создаете новый? –
Да. Я хочу воссоздать с тем же именем. – Akmal