2

在 OS.file 示例之后,它使用 TextEncoder 但是从引导范围来看这是不可用的。

https://developer.mozilla.org/en-US/docs/JavaScript_OS.File/OS.File_for_the_main_thread#Example.3A_Read_the_contents_of_a_file_as_text

我可以访问它的唯一方法是去,decoder = new Services.appShell.hiddenDOMWindow.TextDecoder();但这是唯一的方法吗?

4

1 回答 1

1

您可以TextEncoder在 javascript 模块中使用和朋友。但是这样做可能有点过头了,如果你想要的只是缺少几个全局变量(抛开jsm缓存的事实,这可能不适用于不重启的插件)。

方便的 Addon SDK 加载器提供您需要的东西。

const { TextDecoder, TextEncoder } = Cu.import('resource://gre/modules/commonjs/toolkit/loader.js', {});
于 2014-03-30T11:53:11.913 回答