Grunt環境部署_2

(本文是基於HKUST的NodeJS課程Grunt部分的學習筆記)

首先,我將實現JSHint模塊,用於檢查JS文件語法。

第一步,將cmd導航至一級目錄,運行以下代碼,安裝4個module:

npm install grunt-contrib-jshint --save-dev
npm install jshint-stylish --save-dev
npm install time-grunt --save-dev
npm install jit-grunt --save-dev

JSHint支持多種環境,這裏的第一個包集成了支持grunt環境的JSHint。第二個包用於生成分析報表。第三個包用於計算項目中各個步驟的運行時間。第四個包用於動態導入需要的grunt包(JIT - Just In Time)。
運行完成後檢查package.json文件,如下所示,可以發現,需要的包均已導入:

{
    "name": "conFusion",
    "private": true,
    "devDependencies": {
        "grunt": "^1.0.1",
        "grunt-contrib-jshint": "^1.0.0",
        "jit-grunt": "^0.10.0",
        "jshint-stylish": "^2.1.0",
        "time-grunt": "^1.3.0"
    },
    "engines": {
        "node": ">=0.10.0"
    }
}

第二步,在Gruntfile.js文件中添加配置:

'use strict';
module.exports = function (grunt) {
    require('time-grunt')(grunt);
    require('jit-grunt')(grunt);

    // Define the configuration for all the tasks
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        jshint: {
            options: {
                jshintrc: '.jshintrc',
                reporter: require('jshint-stylish')
            },
            all: {
                src: ['Gruntfile.js', 'app/scripts/{,*/}*.js']
            }
        }
    });

    grunt.registerTask('build', ['jshint']);
    grunt.registerTask('default',['build']);
};

第三步,在一級目錄下創建.jshintrc配置文件,並輸入以下內容,指定檢查範圍:

{
    "bitwise": true,
    "browser": true,
    "curly": true,
    "eqeqeq": true,
    "esnext": true,
    "latedef": true,
    "noarg": true,
    "node": true,
    "strict": true,
    "undef": true,
    "unused": true,
    "globals": {
        "angular": false
    }
}

最後,在完成以上步驟後,在控制檯運行以下指令:

grunt

測試結果如圖:
grunt測試結果

JSHint工作正常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章