我有一个工作的Node应用程序,我正在尝试添加Mocha测试,但得到一些奇怪的导入错误。
这是我的文件结构:
package.json
index.js
src/
chart.js
highcharts-options.js
test/
test_chart.js
这就是我的chart.js
文件:
var chartOptions = require('./highcharts-options');
var analyseChart = {
doSomething: function() { ... }
};
module.exports = analyseChart;
这就是highcharts-options.js
的样子:
var HighCharts = require('highcharts-browserify');
Highcharts.theme = { ... };
目前,我将/src
中的所有内容导入到单个index.js
文件中,然后将其与browserify
捆绑在一起,该版本运行正常,应用程序中没有错误。
现在我想开始为/src
中的函数编写Mocha测试。
这是test_chart.js
中的第一个存根:
var chart = require('../src/chart');
chart.doSomething();
但是当我运行mocha
时,我收到以下错误:
Users/.../js/src/highcharts-options.js:11
Highcharts.theme = {
^
ReferenceError: Highcharts is not defined
at Object.<anonymous> (/Users/.../js/src/highcharts-options.js:11:1)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/.../js/src/chart.js:7:20)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/Users/.../js/test/test_chart.js:1:75)
如何修复Mocha的导入错误?
答案 0 :(得分:1)
var HighCharts = require('highcharts-browserify');
Highcharts.theme = { ... };
您有拼写错误。 高[CC]哈茨
即使你被告知到底出了什么问题,你怎么也没有注意到这一点? 一些错误是如此常见,以至于我们最终停止信任它们,并开始在我们的代码中查找其他错误,甚至没有调查它。 对于&#34; someVar未定义&#34;尤其如此。 javascript中的错误。
<强>外卖:强>
有时您只需要相信您的错误消息。