0
我发现,如果我需要一个模块,并将其存储为一个全球性的,我可以覆盖模块中的方法和属性,如下图所示:node.js中的require如何处理全局变量?
global.passwordhelper_mock = require("helpers/password")
sinon.stub(passwordhelper_mock, "checkPassword").returns true
如果我再需要它本身利用其他模块上面的stubbed方法,我的stubbed版本将被使用。
node.js中的require
函数如何注意这些全局变量?为什么只有在覆盖/存根已保存为全局的模块时才有效?
感谢
那么,如果我做'passwordhelper_mock = require(“助手/密码”)',那么后面的sutbbed模拟将不会被使用。然而,执行'global.passwordhelper_mock'将允许我修改属性 – Industrial