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

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

我的.prettierrc设置:

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

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


当前回答

在我的例子中,它被typescript格式化器劫持了。

它把我逼疯了,因为它一直在重新格式化我的空间!

为了解决这个问题,我执行cmd+。(设置)type -> "默认格式化程序"

还有未检查的typescript

其他回答

这不是pretty本身的问题,而是pretty - VSCode, VSCode扩展的问题。根据Vue的文档,Vue格式默认是禁用的:

更漂亮。disableLanguages(默认值:["vue"]) 要禁用此扩展的语言id列表。需要重新启动。注意:禁用父文件夹中启用的语言将阻止格式化,而不会让任何其他格式化程序运行

在这种情况下,启用您应该设置“更漂亮。disableLanguages”:[]。由于这是一个扩展配置,你应该在VSCode设置文件,而不是。pretierrc。

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

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

检查是否有.vscode/settings。Json文件在您的项目目录(工作空间)。在我的案例中,有人签入了这个文件:

{
  "editor.formatOnSave": false
}

解决方案:删除文件(也从源代码控制中删除),并将.vscode/添加到.gitignore(如果您使用git)。

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

对我来说,当我在. preterrc文件中去掉parser: json时,它起作用了。