我正在尝试设置一个示例Jasmine应用程序,但似乎我在包含jQuery时犯了一个错误。我的咕噜咕噜文件看起来像这样:
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
jasmine: {
src: 'src/**/*.js',
specs: 'spec/**/*.js',
options: {
vendor: 'bower_components/jquery/dist/jquery.js'
}
}
});
grunt.loadNpmTasks('grunt-jasmine-runner');
// Default task.
grunt.registerTask('default', 'jasmine');
};
我有一个规范文件,它引用了$
某处,它将失败并显示以下消息:
ReferenceError: Can't find variable: $
at http://127.0.0.1:8888/spec/PlayerSpec.js:14
at http://127.0.0.1:8888/node_modules/grunt-jasmine-runner/jasmine/lib/jasmine-core/jasmine.js:1035
at http://127.0.0.1:8888/node_modules/grunt-jasmine-runner/jasmine/lib/jasmine-core/jasmine.js:2034
at http://127.0.0.1:8888/node_modules/grunt-jasmine-runner/jasmine/lib/jasmine-core/jasmine.js:2024
jquery.js的路径绝对是正确的。如果我删除$
引用,规范就会通过。
您问题的原因是grunt-jasmine-runner
不支持 grunt
0.4+,并且没有vendor
选项。而是使用适用于 grunt
0.4+ 的最新grunt-contrib-jasmine