我在Windows上使用npm包安装了node.js.
我在D盘中有一个项目为D:> projectD
我试图与SASS,concat等一起运行jshint。一切正常,但在jshint上得到错误:
Local npm module "jshint" not found.Is it installed?
Warning: Task 'jshint' not found. Use --force to continue.
对于安装jshint,使用以下命令:
npm install -g jshint
D:>projectD>npm install --save-dev jshint
Gruntfile.js
jshint:{
all: ['<%= meta.srcPath %>engine/js/myjs1.js']
},
//plugin declaration
grunt.loadNpmTasks('jshint');
// Default task
grunt.registerTask('default', ['concat','sass','jshint']);
的package.json
{
"name": "Test-Project",
"version": "0.1.0",
"devDependencies": {
"grunt": "~0.4.1",
"grunt-contrib-concat": "~0.1.3",
"grunt-sass": "^1.0.0",
"jshint": "^2.8.0"
}
}
有人可以帮助我解释为什么我无法使用jshint以及grunt中的其他任务吗?
答案 0 :(得分:1)
实际上你的Gruntfile错了。
你想配置Grunt。因此,您需要使用grunt.initConfig
所以在你的情况下
grunt.initConfig({
jshint: {
all: ['<%= meta.srcPath %>engine/js/myjs1.js']
}
});
我相信该模块是您需要的grunt-contrib-jshint
模块。
所以你的loadNpmTask将是grunt.loadNpmTasks('grunt-contrib-jshint');
而且,registerTask
只需要包含jshint
,因为您只需加载和配置jshint
。
您错过了module.exports = function(grunt) { }
。您需要将配置导出为函数。
总而言之,您的配置应如下所示
module.exports = function(grunt) {
grunt.initConfig({
jshint: {
all: ['<%= meta.srcPath %>engine/js/myjs1.js']
}
}
});
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.registerTask('default', ['jshint']);
};