Firefox addon 如何使用javascript模块为Mozilla加载prefs?
前几天,我向Mozilla插件提交了一个插件进行初步审查。评审员给了我以下建议: 尽可能使用JavaScript模块。只有在下列情况下,才会进口这些产品: 它们尚未加载,因此可以减少内存消耗和 响应时间。看见 和 . Services.prefs。。。这对你来说很有趣 现在,我用它来加载我的prefs: var prefs=Components.classes[@mozilla.org/preferences service;1] .getServiceComponents.interfaces.nsIPrefBranch 后来Firefox addon 如何使用javascript模块为Mozilla加载prefs?,firefox-addon,preferences,thunderbird-addon,Firefox Addon,Preferences,Thunderbird Addon,前几天,我向Mozilla插件提交了一个插件进行初步审查。评审员给了我以下建议: 尽可能使用JavaScript模块。只有在下列情况下,才会进口这些产品: 它们尚未加载,因此可以减少内存消耗和 响应时间。看见 和 . Services.prefs。。。这对你来说很有趣 现在,我用它来加载我的prefs: var prefs=Components.classes[@mozilla.org/preferences service;1] .getServiceComponents.interfaces
var mypref= this.prefs.getBoolPref("extensions.myaddon.mypref");
现在,我查看了页面引用,不确定如何按照评论员的建议进行。我找不到一个这样做的例子。我所能做的就是添加以下内容:
Components.utils.import('resource://textlink-modules/prefs.js'),
…但在那之后我不知道如何引用mypref。我是新加入插件的,所以如果有人能帮我,那就太好了。我怎样才能按他的方式完成呢?您不能将prefs.js作为一个模块导入,因为它不是一个模块
我们鼓励您做的是导入一次服务模块,然后通过全局变量服务引用它提供的各种服务
编辑:
Components.utils.impotresource://gre/modules/Services.jsm;
var prefs=Services.prefs;
var mypref=prefs.getBoolPrefextensions.myaddon.mypref;
您不能将prefs.js作为模块导入,因为它不是模块
我们鼓励您做的是导入一次服务模块,然后通过全局变量服务引用它提供的各种服务
编辑:
Components.utils.impotresource://gre/modules/Services.jsm;
var prefs=Services.prefs;
var mypref=prefs.getBoolPrefextensions.myaddon.mypref;
我知道prefs.js不是一个模块,但我从MDN中得到了这个示例,我感到相当困惑。你能给我举个例子吗?我似乎无法从文档中找到答案。最后,为了获得我的pref,我这样做对吗?:var mypref=prefs.getBoolPrefextensions.myaddon.mypref;好了,就这样。我知道prefs.js不是一个模块,但我从MDN得到了这个示例,我相当困惑。你能给我举个例子吗?我似乎无法从文档中找到答案。最后,为了获得我的pref,我这样做对吗?:var mypref=prefs.getBoolPrefextensions.myaddon.mypref;好了,就这样。马克解决了,你也得到了我的投票,因为你用代码片段逗我。