繁体   English   中英

npm jshint安装并由Grunt和nodejs工作

[英]npm jshint installation and working by Grunt & nodejs

我使用npm软件包在Windows上安装了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一起完成其他任务吗?

实际上,您的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']);

};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM