我正在使用jsdom来测试我的app.js文件以及nodeJs。
我的app.js
代码如下:
var appText = "hello"
我试图通过jsdom访问此变量,如下所示:
var appJs = fs.readFileSync("/absolute/path/to/app.js", "utf-8")
jsdom.env(
"/path/to/index.html",
[appJs],
function (err, window) {
console.log(window.appText)
})
变量window.appText
打印值undefined
而不是hello
。
为什么app.js
文件没有加载,即使它是作为jsdom
func的args给出的?
答案 0 :(得分:0)
jsdom.env的重载你想要所有人都期望一个URL到脚本文件而不是脚本源。
jsdom.env({
url: "/path/to/index.html",
src: [appJs],
done: function (err, window) {
console.log(window.appText)
})