在我的chrome扩展程序中,我想在扩展程序运行时对内存中的用户首选项进行任何更改,并且只在扩展程序即将终止时将首选项(作为JSON obj)保存到localStorage(我使用了我的扩展中的背景html页面。
我每次更改首选项时都会写入localStorage,但我正在查看是否可以更高效地避免在每次首选项更改时写入磁盘,而只是在终止之前执行一次。
有没有办法知道延期何时被终止,或者是否有人知道更好的方法来处理这种情况?
答案 0 :(得分:0)
这有帮助吗?
function saveSettings(){
window.clearTimeout(window.savingSettings);
return window.savingSettings = window.setTimeout(function(){
... // write to local storage here.
},2000)
};
这将确保:
你应该会在某种程度上看到性能的提升但是有一个问题。如果用户在更改pref后不等待这两秒钟关闭浏览器,则不会保存prefs。