我正在学习XUL School的XPCOM入门教程。我在访问组件时遇到了麻烦。无论我尝试访问哪个组件,例如(来自MDN):
// xpconnect to cookiemanager
// get the cookie manager component in JavaScript
var cmgr = Components.classes["@mozilla.org/cookiemanager;1"].getService();
cmgr = cmgr.QueryInterface(Components.interfaces.nsICookieManager);
我一直遇到“TypeError: Components.classes未定义”的错误。其他地方说这可能是其他附加组件出现问题的原因,所以我在安全模式下重新启动了Firefox,但仍然遇到了这个问题。
这里的其他问题似乎与此类似,指出需要在清单文件中注册组件; 然而,这些似乎是针对用户添加的组件的。这种情况是否也适用于此处?我做错了什么?
编辑:我已经安装了XPCOMViewer,我可以看到组件都在那里。当我使用XPCOMViewer生成访问组件的JavaScript时,它提供了与我上面发布的完全相同的内容。这到底是怎么回事?
require('chrome')
吗? - David-SkyMeshconst {Cc,Ci,Cu} = require("chrome");
开始。 - David-SkyMesh