我使用karma和qunit来测试一个emberjs应用程序。 karma.conf.js文件有这段代码用于链接我的项目库
files: [
"app/bower_components/jquery/jquery.js",
"app/bower_components/mockjax/jquery.mockjax.js",
"app/bower_components/handlebars/handlebars.js",
"app/bower_components/ember/ember.js",
"app/bower_components/ember-data/ember-data.js",
"app/bower_components/bootstrap-sass-official/vendor/assets/javascripts/bootstrap.js",
"app/scripts/app.js",
"tests/test.js"
],
我的app.js就是这样:
var MyApp = window.MyApp = Ember.Application.create();
require('scripts/controllers/*');
require('scripts/store');
require('scripts/models/*');
require('scripts/routes/*');
require('scripts/components/*');
require('scripts/views/*');
require('scripts/router');
但是当我使用配置文件启动业力时,它会报告此错误
Firefox 30.0.0 (Ubuntu) ERROR
ReferenceError: require is not defined at ~/myApp/app/scripts/app.js:4
我试图改变karma.conf文件中库的顺序,但不起作用。
答案 0 :(得分:6)
尝试安装requirejs并将其包含在 karma.conf.js 的文件部分中。
npm install requirejs
运行此命令将创建 node_modules 文件夹(如果尚不存在)。 RequireJS可能会在:
node_modules/requirejs/require.js
因此,您可以尝试编辑文件部分,如下所示:
files: [
"node_modules/requirejs/require.js",
...
]