Должен ли я установить lastError на ноль вручную? - PullRequest
0 голосов
/ 25 ноября 2018

У меня есть этот вспомогательный метод в классе 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();
        }
      });
    });
  }

Глядя на этот код снова через несколько месяцев, я задаюсь вопросом, должен ли я вручную установить ошибку на ноль здесь:

   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 все еще определен, я буду видеть ошибку, которая может быть неактуальной?Кто-нибудь знает, о чем я говорю?

1 Ответ

0 голосов
/ 26 ноября 2018

Нет, вам не нужно это делать.

Согласно документам , chrome.runtime.lastError будет установлено только для цепочки обратного вызова конкретного события, которое вызвало ошибку.

Как только вы обработаете другое событие, оно будет сброшено.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...