新聞中心
這篇文章主要介紹Angular中如何將遷移tslint至eslint,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站建設、成都做網(wǎng)站、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務木蘭,十載網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18980820575
tslint vs eslint
lint類型 | 用處 | 現(xiàn)狀 |
---|---|---|
tslint | 用來檢查ts語法規(guī)范的插件 | 已經(jīng)不再維護;Angular從11起棄用 |
eslint | 檢查js/ts代碼規(guī)范 | 仍在維護,官方推薦 |
如何遷移
1. 安裝eslint依賴,運行以下命令:
ng add @angular-eslint/schematics
運行結(jié)果:
.eslintrc.json文件自動在root生成,默認使用
@angular-eslint
eslint插件。
{ "root": true, "ignorePatterns": [ "projects/**/*" ], "overrides": [ { "files": [ "*.ts" ], "parserOptions": { "project": [ "tsconfig.json" ], "createDefaultProgram": true }, "extends": [ "plugin:@angular-eslint/recommended", "plugin:@angular-eslint/template/process-inline-templates" ], "rules": { "@angular-eslint/directive-selector": [ "error", { "type": "attribute", "prefix": "app", "style": "camelCase" } ], "@angular-eslint/component-selector": [ "error", { "type": "element", "prefix": "app", "style": "kebab-case" } ] } }, { "files": [ "*.html" ], "extends": [ "plugin:@angular-eslint/template/recommended" ], "rules": {} } ] }
以下eslint相關(guān)的cli配置被添加至angular.json,今后如果通過ng命令行生成lib或者application,將會自動在該模塊下生成.eslintrc.json
"cli": { "defaultCollection": "@angular-eslint/schematics" }
2. 移除或替換tslint相關(guān)文件或者配置
刪除根目錄或模塊下的tslint.json
刪除tslint相關(guān)dev依賴包,如
tslint
或者typescript-tslint-plugin
等(如有)在tsconfig.json中刪除tslint-plugin相關(guān)配置,如
將angular.json下的tslint配置(如有)改為eslint,可能需要手動修改
原始tslint配置:
修改后的eslint配置(e.g.配置為在projects/lint-test目錄下執(zhí)行l(wèi)int):
3. 如需暫時關(guān)閉一些代碼或者文件的eslint檢查
在代碼上方添加以下注釋可暫時關(guān)閉該代碼eslint檢查
/* eslint-disable */ const some_un_used_var;
可以在注釋中加入eslint檢查報錯時的rule以表明暫時關(guān)閉檢查的原因。例如以下代碼,不希望某未用變量被eslint檢查出來而拋錯
/* eslint-disable @typescript-eslint/no-unused-vars */ const some_un_used_var;
需要關(guān)閉某些文件的eslint檢查,可添加.eslintignore文件在root下
可在.eslintrc中配置需要lint檢查的pattern(本文不贅述,官方介紹)
4. 檢驗是否可以使用
運行l(wèi)int命令
ng lint
如運行成功,那么恭喜你遷移完成!
(可選)其他可配套的eslint插件
eslint-plugin-deprecation:驗證代碼是否過時
eslint-plugin-header:驗證文件頭部注釋是否遵循一定規(guī)則(可用于版本,專利校驗等)
eslint-plugin-import:驗證import地址拼寫或者名字錯誤,語法等
eslint-plugin-prefer-arrow:驗證使用箭頭函數(shù)
eslint-plugin-unicorn:驗證js,ts語法相關(guān)
eslint-plugin-jsdoc:文檔相關(guān)
...
可在.eslintrc.json中配置(官方文檔)
(可選)配置VS code
安裝eslint插件
保存時VS code自動修正eslint相關(guān)問題
在.vscode/settings.json中設置
"editor.codeActionsOnSave": { "source.fixAll.eslint": true }
或者在File->Preferences->Settings下搜索onsave設置,可找到eslint相關(guān)設置
以上是“Angular中如何將遷移tslint至eslint”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!
本文標題:Angular中如何將遷移tslint至eslint
分享路徑:http://fisionsoft.com.cn/article/jjoshg.html