我在视觉工作室代码编辑器中使用Prettier扩展已有很长时间了,但是最近我正在使用Typescript编写React。因此,我需要为Prettier配置以格式化.tsx文件。
答案 0 :(得分:26)
使用VScode的settings.json中的以下内容编辑设置
"[typescriptreact]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
答案 1 :(得分:6)
扩展iNeelPatel的答案,我不得不在VSCode JSON设置中添加两行:
"[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" },
"[typescriptreact]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }
答案 2 :(得分:3)
这将给出完美的解决方案
“刚才我也遇到了同样的事情。我在设置中将 prettier 设置为默认格式化程序,然后它又开始工作了。我的默认格式化程序为空。”
https://github.com/microsoft/vscode/issues/108447#issuecomment-706642248
答案 3 :(得分:1)
一个简单的用户界面替代方案:
答案 4 :(得分:0)
我的用法
我设置方法是使用eslint的.eslintrc.json
文件。首先,在"extends"
数组中,我添加了
"plugin:@typescript-eslint/recommended"
和
"prettier/@typescript-eslint"
然后,我将"parser"
设置为"prettier/@typescript-eslint"
最后,在"plugins"
数组中,我添加了"@typescript-eslint"
。
您需要获取几个NPM软件包(使用-D
选项安装):
@typescript-eslint/eslint-plugin
@typescript-eslint/parser
我的整个.eslintrc.json
文件供参考:
{
"env": {
"browser": true,
"es6": true,
"jest": true
},
"extends": [
"plugin:@typescript-eslint/recommended",
"prettier/@typescript-eslint",
"plugin:prettier/recommended"
],
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaFeatures": {
"jsx": true
},
"project": "./src/tsconfig.json",
"ecmaVersion": 2018,
"sourceType": "module"
},
"plugins": ["react", "@typescript-eslint", "jest"],
"rules": {
"react/react-in-jsx-scope": "off"
}
}
希望这会有所帮助。