如何检查偏好是否存在?
我需要在Firefox配置中创建一个新的首选项,但是我不知道它是否已经存在。
var firstRun = prefs.getBoolPref('extensions.addon.firstRun');
错误:NS_ERROR_UNEXPECTED:组件返回了失败代码:0x8000ffff(NS_ERROR_UNEXPECTED)[nsIPrefBranch.getBoolPref]
最佳答案
如@ try-catch-finally所述,MDN already has some code snippets。
但是我个人会使用@ try-catch-finally的用户名:p,例如
var somePref = false;
try {
firstRun = prefs.getBoolPref('extensions.addon.somePref');
}
catch (ex) {
prefs.setBoolPref('extensions.addon.somePref', somePref = true);
}
好吧,如果您对扩展名使用added some default preferences(more),那就更好了!为此,尤其是“首次运行”首选项几乎是预定的。
在
defaults/preferences/somefilename.js
中添加例如pref("extensions.addon.firstRun", true);
确保通读Preferences文章。特别地,观察者经常是非常有用的。 ;)