VScode下搭配ESLint、typescript-eslint的代码检查配方
VScode下搭配ESLint、typescript-eslint的代码检查配方
使用eslint监测ts文件
typescript的全局使用
1 | npm i -g typescript |
通过tsc命令查看全局ts版本
1 | tsc -v |
新建node项目
建一个空的文件夹ts-eslint
在文件夹下执行node初始化命令
1
npm init
一路回车后,node项目就初始化完毕了
通过命令 tsc –init 初始化一个tsconfig.json文件
ESLint
全局安装eslint
1
npm i -g eslint
在项目根目录执行eslint的初始化命令
1
eslint --init
这里我选择使用airbnb的规范作为我的代码规范
等它安装完毕之后,自动生成了eslint的配置文件,如下:
我们给他添加一些配置(根据自己喜好来)
这里我禁用了”no-console”这个规则
1
2
3
4
5
6module.exports = {
"extends": "airbnb-base",
rules: {
"no-console": "off",
}
};vscode安装eslint扩展
打开vscode的配置文件setting.json
通过快捷键(cmd + shift + P)输入settings,可以快速打开
在配置文件中加入下列内容
1
2
3
4
5
6
7
8
9
10
11{
"eslint.autoFixOnSave": true,
"eslint.validate": [
"javascript",
"javascriptreact",
{
"language": "typescript",
"autoFix": true
}
]
}到这里,eslint就配置成功了,你可以自己创建一个js文件进行测试
Eslint的typescript插件
无需再装其他ts相关的插件了。
- 确保已经安装TypeScript and @typescript-eslint/parser,然后安装@typescript-eslint/eslint-plugin
1 | npm i typescript --save-dev |
修改.eslintrc配置文件
1
2
3
4
5
6
7
8
9module.exports = {
"extends": ["airbnb-base", "plugin:@typescript-eslint/recommended"],
"parser": "@typescript-eslint/parser",
"plugins": ["@typescript-eslint"],
rules: {
"no-console": "off",
"@typescript-eslint/indent": ["error", 2],
}
};配置完毕,项目中最终的依赖如下
1
2
3
4
5
6
7
8"devDependencies": {
"@typescript-eslint/eslint-plugin": "^1.7.0",
"@typescript-eslint/parser": "^1.7.0",
"eslint": "^5.16.0",
"eslint-config-airbnb-base": "^13.1.0",
"eslint-plugin-import": "^2.17.2",
"typescript": "^3.4.5"
}