在js文件中加载html文件

时间:2018-06-26 10:35:47

标签: javascript html angular jsdom

我的C:\ Users \ project \ text.html中有这个text.html文件,我想将其加载到测试文件.js中。

我想在测试功能之一中加载HTML文件,因此可以测试HTML元素。当我将html内容放入这样的测试文件中时,效果很好:

const jsdom = require("jsdom");
const { JSDOM } = jsdom;
...
 Then('...', function() {
     
 const dom = new JSDOM(`<!DOCTYPE html><div id="hey" class="modal-footer">Hello world</div>`);

});
但是我不想要innerHTML,我想从JSDOM加载文件text.html,而不是在测试文件中写入html。还有其他方法可以执行类似require text.html inide JSDOM吗?

1 个答案:

答案 0 :(得分:2)

JSDOM提供了fromFile实用程序功能,该功能允许从本地文件加载。这将加载./foo.html

const { JSDOM } = require("jsdom");

JSDOM.fromFile("./foo.html").then(dom => {
  // ...
});

如果您需要从URL加载,则还有fromURL

const { JSDOM } = require("jsdom");

JSDOM.fromURL("http://www.example.com/").then(dom => {
  // ...
});