编程语言
首页 > 编程语言> > javascript – jsdom document.createWindow()为非空文档返回空

javascript – jsdom document.createWindow()为非空文档返回空

作者:互联网

我正在尝试按照“创建类似浏览器的BOM / DOM /窗口”部分的https://github.com/tmpvar/jsdom中的简短设置说明进行操作.不幸的是,在第3行(.createWindow步骤)之后,我执行console.log(window)并打印一个空对象.那里至少应该有window.document,但没有.似乎document.createWindow的行为与jsdom.createWindow相同.

到目前为止,这是我的代码:

var jsdom = require('jsdom').jsdom;

document = jsdom("<html><head></head><body>hello world</body></html>");
window = document.createWindow();

console.log(window); // output: {}

console.log(window.document.innerHTML); // error, cannot read innerHTML on undefined

那么,我做错了什么愚蠢的事情?

FYI文档已正确创建.打印它输出一个非常大的对象.

我正在使用Mac.

解决方法:

var jsdom = require('jsdom').jsdom;
document = jsdom('<!doctype html><html><body>hello jsdom</body></html>');
window = document.createWindow();
console.log(window);
var txt = window.document.body.innerHTML;
console.log(txt);

标签:javascript,node-js,jsdom
来源: https://codeday.me/bug/20190530/1182626.html