我在Angular6类上有此辅助方法:
saveToLocalStorage(key: string, val: any): Promise<void | LastErrorType> {
return new Promise(function(resolve, reject) {
chrome.storage.local.set({ [key]: val }, function() {
if (chrome.runtime.lastError) {
reject(chrome.runtime.lastError);
} else {
resolve();
}
});
});
}
几个月后再次查看此代码令我感到奇怪,我是否应该在此处手动将错误设置为null:
chrome.storage.local.set({ [key]: val }, function() {
if (chrome.runtime.lastError) {
reject(chrome.runtime.lastError);
chrome.runtime.lastError = null; // <<< necessary?
} else {
resolve();
}
});
还是chrome.runtime以某种方式处理此问题?显然,在程序的后面,如果仍然定义了chrome.runtime.lastError,我会看到可能不再相关的错误?有人知道我在说什么吗?
答案 0 :(得分:1)