jsdom 的 getVirtualConsole 例子
jsdom's getVirtualConsole example
我正在尝试 console.log("hello world")
来自 jsdom 的 getVirtualConsole
函数。我没有收到任何回复。
var jsdom = require("jsdom")
var window = jsdom.jsdom('<html><body><script type="text/javascript">console.log(\"hello world\")</script></body></body>').defaultView;
jsdom.getVirtualConsole(window).sendTo(console);
这基本上是直接从the documentation.
拉过来的
问题是您的脚本 运行 在您获得虚拟控制台之前。如果稍微延迟一下,您会看到输出。
然而,这显然是一个非常有问题的情况。所以我们在 5.3.0 中添加了 a new API,允许您提前创建一个虚拟控制台,并将其传入。因此,您可以做到
"use strict";
const jsdom = require("jsdom");
const virtualConsole = jsdom.createVirtualConsole();
virtualConsole.sendTo(console);
const window = jsdom.jsdom(`
<!DOCTYPE html>
<script>console.log("hello world");</script>`,
{ virtualConsole }).defaultView;
我正在尝试 console.log("hello world")
来自 jsdom 的 getVirtualConsole
函数。我没有收到任何回复。
var jsdom = require("jsdom")
var window = jsdom.jsdom('<html><body><script type="text/javascript">console.log(\"hello world\")</script></body></body>').defaultView;
jsdom.getVirtualConsole(window).sendTo(console);
这基本上是直接从the documentation.
拉过来的问题是您的脚本 运行 在您获得虚拟控制台之前。如果稍微延迟一下,您会看到输出。
然而,这显然是一个非常有问题的情况。所以我们在 5.3.0 中添加了 a new API,允许您提前创建一个虚拟控制台,并将其传入。因此,您可以做到
"use strict";
const jsdom = require("jsdom");
const virtualConsole = jsdom.createVirtualConsole();
virtualConsole.sendTo(console);
const window = jsdom.jsdom(`
<!DOCTYPE html>
<script>console.log("hello world");</script>`,
{ virtualConsole }).defaultView;