jsdom 解决 nodejs 执行含有 document 或 window 等浏览器对象的 js 代码
环境需求
- 已安装 nodejs ,点此去安装
- 查看 node 模块全局路径,
npm -g root
- 在环境变量中添加
NODE_PATH
变量,值为上述 node 模块全局路径 - 安装 jsdom ,以下是全局安装 jsdom (可在任意地方调用 jsdom ,不局限于执行安装命令时的路径)
npm -g install jsdom
解决步骤
在 js 文件首部添加以下代码即可
const jsdom = require("jsdom");
const {JSDOM} = jsdom;
const dom = new JSDOM(`<!DOCTYPE html><p>Hello world</p>`);
window = dom.window;
document = window.document;
navigator = window.navigator;
XMLHttpRequest = window.XMLHttpRequest;