Taro3小程序中使用eslint standard校驗踩坑
摘要
在taro項目中,一般很少有集成其他eslint 格式校驗規則的情況,如 standard / airbnb 等,但沒准呢,對於所有項目都使用相同校驗規則的團隊來說,別人就是想集成自己喜歡的校驗規則,就是不中意taro自帶的校驗規則。
如何在taro3中集成standard校驗規則?這是我遇到的問題,記錄下正確填坑方式。
在網上搜索了很多解決方法,大部分都是先裝上 eslint-config-standard 依賴,然后再在 .eslintrc.js下 extends屬性中配置 extends:['standard'],在經過一翻折騰之后,發現這種方式很不方便,不僅需要安裝 eslint-config-standard 依賴,還要手動安裝其他的一些雜七雜八的依賴,而且具體需要哪些依賴,你缺哪些依賴,哪些依賴版本應該怎么定,都會把人弄暈。
配置方法
最后,講下我的解決方案,以下方案我是在 npmjs.com 上 關於eslint-config-standard 這個依賴的介紹里看到的,這里提供了自動配置 eslint 的方法,具體做法如下圖所示:
先使用 npx eslint --init命令進行eslint 初始化,然后根據指示一步一步往下進行即可,示例如下圖:
選擇安裝eslint的作用;
選擇使用什么 modules,現在一般都是第一個了;
選擇項目框架;
選擇項目運行環境;
選擇eslint 格式校驗規則配置選項,是選擇當下幾個主流的校驗規則還是自定義,這里選第一個;
選 standard
選配置文件生成格式,這里選 JavaSccript格式的;
自動檢查你當前所需要的eslint版本與你已安裝的版本是否匹配,不匹配需要幫更新;
配置standard需要安裝的所有依賴,這里都給你列出來了,只需要輸入 yes 安裝即可;
安裝中....
安裝完后會生成新的eslint配置文件;
遇到的坑:
問題
我在安裝完成后曾出現以下這個問題:
Error: .eslintrc.js » eslint-config-standard:
Environment key "es2021" is unknown
問題原因
出現問題的原因是:
當前版本的 eslint 與 eslint-config-standard 版本不兼容,這個在stackoverflow 上有很多大神提示;
解決方案
具體做法是:
npm install eslint-config-standard@14.1.1 eslint-plugin-standard -dev
其他問題
如果安裝過程出現其他問題,可以這樣解決:
使用 rimraf node_modules 命令 先刪除事先已經存在的依賴包;
使用 npx eslint --init 命令配置eslint,重新執行一次上面教程里的操作;
使用 npm install 重新安裝系統的依賴;
The end.