File io 如何使用bootstrap插件中的TextEncoder和TextDecoder

File io 如何使用bootstrap插件中的TextEncoder和TextDecoder,file-io,firefox-addon,firefox-addon-restartless,File Io,Firefox Addon,Firefox Addon Restartless,下面的OS.file示例使用TextEncoder,但从引导范围来看,这不可用 我访问它的唯一方法是使用decoder=new Services.appShell.hiddenDOMWindow.textdecorder()但这是唯一的方法吗?您可以在javascript模块中使用textcoder和好友。但是,如果您只想缺少几个全局变量,那么这样做可能会有点过头(撇开jsm被缓存的事实不谈,这可能不适合无重启插件) 插件SDK的加载器方便地提供您所需的内容 const{TextDecoder

下面的OS.file示例使用TextEncoder,但从引导范围来看,这不可用


我访问它的唯一方法是使用
decoder=new Services.appShell.hiddenDOMWindow.textdecorder()
但这是唯一的方法吗?

您可以在javascript模块中使用
textcoder
和好友。但是,如果您只想缺少几个全局变量,那么这样做可能会有点过头(撇开
jsm
被缓存的事实不谈,这可能不适合无重启插件)

插件SDK的加载器方便地提供您所需的内容

const{TextDecoder,TextEncoder}=Cu.import('resource://gre/modules/commonjs/toolkit/loader.js', {});

谢谢paa!这就成功了!我不明白你的第一句话?你是说如果我做了一个.jsm,它就可以访问TextEncoder吗?是的,
jsm
的代码上下文可以访问(mozilla)JS全局文件