Я использую angular-indexedDB для индексированныхDB в AngularJS. Я хочу получить ошибку, если вставка не удалась. Но я не получаю никакой ошибки, это просто выходит из функции, если я запускаю тот же код дважды, как я сделал имя уникальным.Как получить ошибку при вставке в магазин?
Ошибка:
возвращение ConstraintError _this.store.add (пункт);
ConstraintError req = this.store.openCursor();
Код:
angular.module('myModuleName')
.controller('myControllerName', function($scope, $indexedDB) {
$scope.objects = [];
$indexedDB.openStore('people', function(store){
store.insert({"ssn": "444-444-222-111","name": "John Doe", "age": 57}).then(function(e){console.log('inside insert');});
store.getAll().then(function(people) {
// Update scope
$scope.objects = people;
});
});
});
Спасибо Панкай, теперь я в состоянии обнаружить ошибку, но все же он выходит из функции. Ошибка здесь = операция мутации в транзакции завершилась неудачно, потому что ограничение не было выполнено. Например, объект, такой как хранилище или индекс объекта, уже существует, и создается новая попытка создания. ConstraintError \t возвращение _this.store.add (item); ConstraintError req = this.store.openCursor(); – jain
@ dilpeshjain, вы не справлялись с этой ошибкой на стороне сервера? –
Моя цель - выяснить, находится ли эта запись уже в БД или нет, на основе результата я хочу выполнить некоторые задачи. – jain