当前我正在使用
编写应用此应用程序应模仿CalDAV服务器。因此,我依赖于模块xmljs,这是(在我研究之后)唯一一个为我提供直接{
"java.configuration.updateBuildConfiguration": "automatic"
}
方法来在XML中查找属性的模块。
在节点Container中,App运行正常,没有任何错误。但是当我用Jest开始测试时,测试失败并显示错误
path
我现在知道,此错误源自尝试设置ReferenceError: GLOBAL is not defined
at node_modules/xmljs/core.js:46:2
at Object.<anonymous> (node_modules/xmljs/core.js:176:3)
at node_modules/xmljs/XmlParser.js:3:11
at Object.<anonymous> (node_modules/xmljs/XmlParser.js:204:3)
变量的xmljs模块,该变量在NodeJS中解析为GLOBAL
。但这不是开玩笑。
我的代码如下所示:
global
任何人都可以
向我展示一个模块,而不需要对我的代码进行大量修改
告诉我如何通过变通办法来欺骗在xmljs中设置的GLOBAL变量
感谢您的帮助
答案 0 :(得分:1)
您可以在测试设置中设置GLOBAL
的值。看来GLOBAL
变量是节点中global
的不赞成使用的形式。
在jest.config.js
文件中,您可以通过setupFiles
选项添加设置文件:
module.exports = {
[...] // Other configurations
setupFiles: ['<rootDir>/define-deprecated-global.js']
};
在文件define-deprecated-global
中,您可以将GLOBAL
变量定义为:
global.GLOBAL = global;