测试所需的附加文件,如 html 文件中的测试装置,应由集成到 Karma 测试运行器中的 Web 服务器提供服务。之前有人问过如何执行此操作,例如
答案是通过 html2js 将它们预处理成脚本。我不明白这样做的原因,我只是想让 karma web 服务器正常提供文件。如何实现?
如果这不可能,那么将html资源转换为js文件有什么好处?
测试所需的附加文件,如 html 文件中的测试装置,应由集成到 Karma 测试运行器中的 Web 服务器提供服务。之前有人问过如何执行此操作,例如
答案是通过 html2js 将它们预处理成脚本。我不明白这样做的原因,我只是想让 karma web 服务器正常提供文件。如何实现?
如果这不可能,那么将html资源转换为js文件有什么好处?
您应该在karma.conf.js
withincluded: false
标志中添加文件。
files: [
{pattern: 'templates/*.html', included: false}
],
之后,您可以使用您最喜欢的 ajax 工具加载这些 html 片段...
var xhr = new XMLHttpRequest();
xhr.open('get', '/base/templates/xxx.html', false);
xhr.send();
console.log(xhr.status, xhr.responseText); //200, "<html content>"
默认情况下,这些文件带有included: true
标志... Karma 从 includables 创建脚本标签...