如何在Chrome启动时清除chrome.storage

时间:2017-07-28 23:49:55

标签: javascript google-chrome-extension callback local-storage asynchronous-javascript

我正在处理使用事件页面的Chrome扩展程序,并且每次Chrome启动时我都试图完全清除它的本地存储空间。

这就是我现在在 eventPage.js

中所拥有的
chrome.runtime.onStartup.addListener(function() {
  chrome.storage.local.clear(function() {
    var error = chrome.runtime.lastError;
    if (error)
      console.error(error);
  });
});

// The below code retrieves the object of interest 'storage_var' 
// and does stuff with it

chrome.storage.local.get(init);

function init(storage_var) {
  // doing stuff, includes a bunch of listeners and helpers that
  // sometimes use chrome.storage.local.set to affect local storage
}

这似乎不起作用。我理解这些函数的异步性质,所以请多给我一些关于它们的长篇讲座。这并不是试图以某种方式使clear函数同步运行;我不仅不确定如何正确使用clear功能,因此它可以按预期运行。

我正在考虑将chrome.runtime.onStartup.addListener调用的所有内容放在clear的回调函数中,以便只在clear完成后调用它,但这意味着将整个程序放在chrome启动监听器,它似乎不是正确的方法。我不确定我是否正确地思考这个问题。

任何有关异步功能的帮助和智慧都将受到赞赏。请不要咆哮,我已经阅读了很多:)谢谢!

0 个答案:

没有答案