管理代碼質(zhì)量 - lint-staged抗碰、eslint狮斗、prettier的聯(lián)合使用

實現(xiàn)目標:從零對項目工程進行配置定制,以保證在git提交時弧蝇,校驗代碼是否符合定制的規(guī)則及風格

說在前面??

代碼質(zhì)量作為前端工程化的一個重要指標碳褒,需要前端團隊共同管理起來。雖然基于vue-cli等腳手架可以配置出一些現(xiàn)成的工程鏈看疗,隔離開發(fā)者的關注點沙峻,但是我們還是需要大致進行一個了解,以便應用于其他項目工程两芳。

2021-04-22:以下流程已被我封裝成了一款npm插件摔寨,實現(xiàn)自動配置,歡迎體驗反饋

Let's beging

eslint

對代碼進行質(zhì)量檢測怖辆,預防某些用法可能存在的問題是复,配置項繁多,常規(guī)方案是使用被認可的標準指南

  • 安裝eslint

npm i eslint -D

  • 初始化配置(如果你使用了ts 請在此之前先安裝typescript竖螃,否則生成配置文件會拋錯)

npx eslint --initnode_modules/.bin/eslint --init(基于環(huán)境因素我無法使用npx淑廊,故使用后者)

eslint初始化的配置對話

通過對話得到基本配置文件.eslintrc.js,配置詳細請參閱文檔

prettier

對代碼風格進行強制控制特咆,不允許freestyle??季惩,可配置項少,因為是opinionated,即自主傾向強硬的画拾,相當于喜歡就用啥繁,不喜勿噴,hahaha~青抛,相反的unopinionated旗闽,如eslint,可配置項就比較多

  • 安裝prettier和eslint對應的插件
    npm i prettier eslint-plugin-prettier -D

  • 配置.eslintrc.js

    eslint配置文件的增量修改

    至此我們已經(jīng)完成了eslint和prettier的部分集成脂凶,此時如果運行eslint進行檢測宪睹,會先用prettier進行代碼風格修訂,然后對修訂后的代碼進行eslint的規(guī)則檢測,此時會產(chǎn)生出兩者規(guī)則不同之處的錯誤并且無法自動修正咽安,需要繼續(xù)做處理

  • 安裝eslint-config-prettier
    npm i eslint-config-prettier -D

  • 配置.eslintrc.js

    eslint配置文件的第二次增量修改

    對于standardprettier的extends還可以繼續(xù)合并
    合并standard和prettier

lint-staged

實際使用中每次都對整個項目進行l(wèi)int是不可取的蛹疯,所以我們要結合lint-staged使用。顧名思義但狭,只對staged的文件進行l(wèi)int,網(wǎng)上大部分方案都是利用husky和lint-staged結合進行使用,但是我們利用yorkie進行更簡單的配置??

  • 安裝yorkie和lint-staged
    npm i yorkie lint-staged -D
    安裝好后就會自動打開git hooks邮屁,我們只需要對package.json進行簡單配置
    package.json的增量修改

    至此,配置完成菠齿,在我們對代碼進行commit時佑吝,就會進行代碼校驗啦~
    完結,撒花??
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末绳匀,一起剝皮案震驚了整個濱河市芋忿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌疾棵,老刑警劉巖戈钢,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異是尔,居然都是意外死亡殉了,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門拟枚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來薪铜,“玉大人,你說我怎么就攤上這事恩溅『鄞眩” “怎么了?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵暴匠,是天一觀的道長鞍恢。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么帮掉? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任弦悉,我火速辦了婚禮,結果婚禮上蟆炊,老公的妹妹穿的比我還像新娘稽莉。我一直安慰自己,他們只是感情好涩搓,可當我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布污秆。 她就那樣靜靜地躺著,像睡著了一般昧甘。 火紅的嫁衣襯著肌膚如雪良拼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天充边,我揣著相機與錄音庸推,去河邊找鬼。 笑死浇冰,一個胖子當著我的面吹牛贬媒,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播肘习,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼际乘,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了漂佩?” 一聲冷哼從身側響起脖含,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎仅仆,沒想到半個月后器赞,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡墓拜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年港柜,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片咳榜。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡夏醉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出涌韩,到底是詐尸還是另有隱情畔柔,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布臣樱,位于F島的核電站靶擦,受9級特大地震影響腮考,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜玄捕,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一踩蔚、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧枚粘,春花似錦馅闽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至攀圈,卻和暖如春暴凑,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背量承。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工搬设, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留穴店,地道東北人撕捍。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像泣洞,于是被迫代替她去往敵國和親忧风。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內(nèi)容