標籤:前端自動化工具 grunt 外掛程式 jshint 的簡單使用(四)
一、contrib-jshint 外掛程式的使用
1、安裝 “grunt-contrib-jshint ”外掛程式命令(在終端進入到項目根目錄執行)
npm install grunt-contrib-jshint --save-dev
2、在項目根目錄下提供 jshint 外掛程式任務配置需要的 src 目錄和需要被檢測的源檔案(js 源檔案放置到 src 目錄下)
mkdir src
3、在 Gruntfile.js 檔案中對 jshint 任務進行配置
// 封裝函數
module.exports = function (grunt) {
// 任務配置,所有外掛程式的配置資訊
grunt.initConfig({
// 擷取 package.json 的資訊
pkg: grunt.file.readJSON(‘package.json‘),
// jshint 外掛程式的配置資訊
jshint: {
options: {
‘-W060‘: true, // 根據錯誤碼屏蔽指定錯誤
jshintrc: ‘.jshintrc‘ // 指定 jshint 文法檢測規則的設定檔
},
// 具體任務配置
build: [‘src/*.js‘] // 需要進行 js 文法檢測的源檔案,可以同時指定多個檔案
}
});
// 載入指定外掛程式任務
grunt.loadNpmTasks(‘grunt-contrib-jshint‘);
// 預設執行的任務
grunt.registerTask(‘default‘, [‘jshint‘]);
};
PS:jshint 外掛程式的配置有兩項:
“options”中通過使用“jshintrc”屬性來指定 jshint 文法檢測規則的設定檔,.jshintrc 檔案中代碼的格式也要嚴格遵守 json 文法規範,否則無效。
“build”中指定哪些 js 檔案需要進行文法檢測。
4、最後在終端運行 grunt 命令
PS:如果提示 "Done, without errors." 證明就沒什麼問題了。
5、.jshintrc 檔案的配置(該檔案放置到項目根目錄下)
{
"asi": true, // 是否禁止缺少分號警告
"loopfunc": true, // 是否禁止函數內部迴圈
"expr": true, // 是否支援使用Regex
"node": true, // 該檔案是否為 node.js 檔案
"curly": true, // 代碼塊是否必須使用大括弧
"eqeqeq": false, // 是否使用 "===" 表示相等,"!==" 表示不等
"eqnull": false, // 是否禁止使用 "== null" 比較
"undef": true, // 是否指定變數必須先聲明後使用
"strict": false, // 是否禁止使用strict 模式
}
PS:jshintrc 檔案中的選項具體的含義請參考 http://jshint.com/docs/options/
本文出自 “珞辰的部落格” 部落格,轉載請與作者聯絡!
前端自動化工具 grunt 外掛程式 jshint 的簡單使用(四)