Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox addon 如何使用javascript模块为Mozilla加载prefs?_Firefox Addon_Preferences_Thunderbird Addon - Fatal编程技术网

Firefox addon 如何使用javascript模块为Mozilla加载prefs?

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

前几天,我向Mozilla插件提交了一个插件进行初步审查。评审员给了我以下建议:

尽可能使用JavaScript模块。只有在下列情况下,才会进口这些产品: 它们尚未加载,因此可以减少内存消耗和 响应时间。看见 和 . Services.prefs。。。这对你来说很有趣

现在,我用它来加载我的prefs:

var prefs=Components.classes[@mozilla.org/preferences service;1] .getServiceComponents.interfaces.nsIPrefBranch

后来

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;好了,就这样。马克解决了,你也得到了我的投票,因为你用代码片段逗我。