Mocha中的Node和Require导入错误?

时间:2015-05-27 16:21:28

标签: javascript node.js require

我有一个工作的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的导入错误?

1 个答案:

答案 0 :(得分:1)

var HighCharts = require('highcharts-browserify');
Highcharts.theme = { ... };

您有拼写错误。 高[CC]哈茨

即使你被告知到底出了什么问题,你怎么也没有注意到这一点? 一些错误是如此常见,以至于我们最终停止信任它们,并开始在我们的代码中查找其他错误,甚至没有调查它。 对于&#34; someVar未定义&#34;尤其如此。 javascript中的错误。

<强>外卖:
有时您只需要相信您的错误消息。