在我安装并启用了ESlint和Prettier的Nuxt应用程序中,我切换到Visual Studio Code。

当我打开一个.vue文件并按CMD+ Shift + P并选择格式化文档时,我的文件根本没有被格式化。

我的.prettierrc设置:

{
  "tabWidth": 2,
  "semi": false,
  "singleQuote": true
}

我有这么多源代码行,所以我不能手动格式化它们。我做错了什么?


当前回答

这里我的漂亮配置工作在vue.js文件,typescript文件和json文件。

arrowParens: 'always'
bracketSpacing: true
endOfLine: 'crlf'
htmlWhitespaceSensitivity: 'css'
insertPragma: false
jsxBracketSameLine: false
jsxSingleQuote: true
overrides:
- files: '*.json'
  options:
    semi: true
    parser: 'json'
parser: 'babel'
printWidth: 120
proseWrap: 'preserve'
quoteProps: 'truepreserve'
requirePragma: false
semi: false
singleQuote: true
tabWidth: 8
trailingComma: 'es5'
useTabs: true
vueIndentScriptAndStyle: 

不要忘记更新你的vscode设置

{
"extensions.ignoreRecommendations": false,
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"[json]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[vue]": {
    "editor.defaultFormatter": "octref.vetur"
},
"[typescript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[html]": {
    "editor.defaultFormatter": "vscode.html-language-features"
},
"vetur.format.options.useTabs": true}

那是所有人的事!

其他回答

更漂亮地回滚到1.7.3并修复了它

对我来说,它与ESlint有关,ESlint也与Prettier一起工作。Eslint没有工作(本地安装与全局安装冲突),这破坏了Prettier。

检查你的包裹。Json文件的属性为prettier,因为这将优先。

{
  "name": "example",
  "scripts": { ... },

  "prettier": {},

  "dependencies": { ... },
  "devDependencies": { ... },
}

删除此属性,将使用. pretierrc文件。

优先级的顺序在更漂亮的文档中说明。

我在WSL中工作(也将为只在自定义工作区中有问题的人工作),我尝试了每一个可能的修复,直到我在vscode设置上发现这个选项卡:

选择关于您的问题的选项卡,并再次更改所有设置,并将“Files: Auto Save”设置更改为“onFocusChange”或“onWindowChange”。

在VSCode中启用“保存格式”:设置>>用户>>文本编辑器>>格式化对我有用!