如何跟踪 indexedDB 中的 ADD 错误?
How to track ADD errors in indexedDB?
我想将多行数据添加到 IndexedDB 中。数据将从 CSV 文件中解析出来,每一行都有一个 id。只应将新 ID 添加到数据库中,因此我使用 add
。到目前为止效果很好。
但是我怎么能找出哪个 lines/objects 没有添加?(因为重复的 id)如果我使用 onerror
并检查对象 e
在 chrome 的控制台上,我找不到发送到数据库的对象。所以我只知道,没有添加一些东西,但不知道它是什么。那么如何追踪呢?
// ....
for (var key in csvObject.data ) {
var request = store.add(csvObject.data[key]);
}
request.onerror = function(e) {
console.log(e); // e contains not the value of CSVobject.data[key]
};
你应该这样做。在循环中编写函数并将您的对象作为参数传递给它。
for (var key in csvObject.data) {
(function(obj) {
var request = store.add(obj);
request.onerror = function(e) {
console.log(obj, e.target.error, e.target.source); // some error messages
};
})(csvObject.data[key]);
}
我想将多行数据添加到 IndexedDB 中。数据将从 CSV 文件中解析出来,每一行都有一个 id。只应将新 ID 添加到数据库中,因此我使用 add
。到目前为止效果很好。
但是我怎么能找出哪个 lines/objects 没有添加?(因为重复的 id)如果我使用 onerror
并检查对象 e
在 chrome 的控制台上,我找不到发送到数据库的对象。所以我只知道,没有添加一些东西,但不知道它是什么。那么如何追踪呢?
// ....
for (var key in csvObject.data ) {
var request = store.add(csvObject.data[key]);
}
request.onerror = function(e) {
console.log(e); // e contains not the value of CSVobject.data[key]
};
你应该这样做。在循环中编写函数并将您的对象作为参数传递给它。
for (var key in csvObject.data) {
(function(obj) {
var request = store.add(obj);
request.onerror = function(e) {
console.log(obj, e.target.error, e.target.source); // some error messages
};
})(csvObject.data[key]);
}