reject-importGlobalProperties¶
拒绝调用 Cu.importGlobalProperties
或 XPCOMUtils.defineLazyGlobalGetters
。
在系统模块中,所有必需的属性都应该已经可用。在非模块代码或非系统模块中,WebIDL 定义的接口应该已经可用,因此不需要导入。
对于 sjs 测试文件,如果相关的全局变量尚不可用,请考虑扩展 httpd 服务器提供的全局变量列表。
选项¶
“everything”: 完全禁止使用导入/获取器。
“allownonwebidl”: 禁止对 WebIDL 符号使用导入函数。允许其他符号。
everything¶
此选项的错误代码
Cu.importGlobalProperties(['TextEncoder']);
XPCOMUtils.defineLazyGlobalGetters(this, ['TextEncoder']);
allownonwebidl¶
此选项的错误代码
// AnimationEffect is a webidl property.
Cu.importGlobalProperties(['AnimationEffect']);
XPCOMUtils.defineLazyGlobalGetters(this, ['AnimationEffect']);
此选项的正确代码
// TextEncoder is not defined by webidl.
Cu.importGlobalProperties(['TextEncoder']);
XPCOMUtils.defineLazyGlobalGetters(this, ['TextEncoder']);