我的扩展程序已将CSS文件保存到用户的配置文件目录中。现在,我想将这个CSS文件加载到一个窗口中。
sheetheet / utils 似乎有一个 loadSheet(window,uri,type)方法(https://developer.mozilla.org/en-US/Add-ons/SDK/Low-Level_APIs/stylesheet_utils),但我无法弄清楚如何将我的CSS文件路径转换为预期的URI对象。
我的代码是这样的:
const ssutils = require("sdk/stylesheet/utils"),
windows = require("sdk/windows");
var path_to_file = "c:\users\myname\appdata\local\temp\tmppr9imy.mozrunner\myextension\mycssfile.css"
for (let wind of windows.browserWindows) {
// What is the magic function I need to use?
ssutils.loadSheet(wind, someMagicFunctionHere(path_to_file), "user");
}
答案 0 :(得分:5)
sdk/url
模块会提供您要求的功能。
const { fromFilename } = require("sdk/url");
...
ssutils.loadSheet(wind, fromFilename(path_to_file), "user");
fromFilename
将路径转换为file:
URI