我一直在使用D3进行基于浏览器的可视化。它是纯HTML + JS。
由于某些逻辑功能已经变得相当复杂,因此我将它们放在单独的JS文件中,并在<script src="foo.js">
中将index.html
导入。
现在,我想使用mocha在foo.js
中为这些功能添加一些测试,但是我无法找出正确的方法使它们在<script>
导入和导入中均有效。节点/摩卡。
最接近的是在exports.foo = { foo1: foo1 }
文件中使用foo.js
,在测试文件中使用const foo = require('../foo.js')
。
但这随后会在浏览器中抛出Uncaught ReferenceError: exports is not defined
。 (可以通过在index.html中定义全局var exports = {}
来避免这种情况,但这肯定不是正确的操作方式。)
所以问题是:
如何在foo.js
文件中正确测试我的函数,同时仍保持使用<script src="foo.js">
将其导入index.html的兼容性?