eslint

安裝

  • cnpm i eslint -D
  • npx eslint --init 初始化配置文件
  • npx eslint *.js 檢查項(xiàng)目所有js
  • npx eslint *.js --fix自動(dòng)修復(fù)代碼風(fēng)格問(wèn)題
  • 配置注解 //eslint-disable-line + 具體rule 禁用某個(gè)規(guī)則

gulp中集成eslint

  • 安裝eslint gulp-eslint
  • 配置文件添加$ 防止找不到j(luò)query全局標(biāo)識(shí)
    globals: {
    "jQuery": "readonly"
    }
    .pipe(plugins.eslint())
    .pipe(plugins.eslint.format())  //打印錯(cuò)誤
    .pipe(plugins.eslint.failAfterError())  //檢查錯(cuò)誤終止

webpack 中eslint

  • 安裝eslint eslint-loader
  {
        test: /\.js$/, 
        exclude: /node_modules/, 
        use: 'eslint-loader',
        enforce:"pre"  //優(yōu)先級(jí)最高
      },

ts

  • cnpm i typescript
  • cnpm i eslint
  • 初始化eslint配置文件

stylelint

  • cnpm i stylelint -D
  • 添加配置文件 .stylelintrc.js
  • cnpm i stylelint-config-standard
  • npx stylelint *.css
module.exports = {
   extends:"stylelint-config-standard"
}

prettier

  • 代碼格式化
  • cnpm i prettier
  • npx prettier 文件名 --write 格式化文件

Git Hooks

  • git 鉤子
  • .git/hooks pre-commit文件(shell腳本)為commit前置鉤子,提交前觸發(fā)
  • eslint結(jié)合git hooks
  • 不使用shell使用hustry模塊來(lái)實(shí)現(xiàn) cnpm i husky -D
  • package.json 定義 "husky " :{"hooks":{"pre-commit":"npm run pre-commit"}}
  • scripts 設(shè)置test命令 "eslint ./index.js"
  • cnpm i lint-staged -D
  • package.json設(shè)置 lint-staged:{ "*.js":["eslint","git add"]}
  • script 設(shè)置pre-commit: "lint-staged"
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容