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

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

我的.prettierrc设置:

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

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


当前回答

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

{
  "editor.formatOnSave": false
}

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

其他回答

以下三个步骤可以解决你的问题:

1 -进入设置,然后搜索自动格式

2 -选择文本编辑器

3—选择“esbenp”。pretty -vscode作为默认格式化器。

简单地说,转到设置>用户选项卡>文本编辑器>编辑器:默认格式化器,并将其更改为更漂亮。

最近我也遇到了同样的问题,那就是在保存代码时,pretty不会自动格式化代码。检查更漂亮,我看到一个错误:无效的“arrowParens”值。期望“总是”或“避免”,但得到的是真的。

当我点击这个时,看到错误消息:

结果我也安装了“现在更漂亮”。这在我的配置文件中有一个布尔值。卸载“现在更漂亮”后,一切正常。

有一些语法是pretty无法解析的。?? 是其中之一。去掉那个符号后,我的美女就像施了魔法一样。你应该看看vscode中Prettier扩展的输出。这应该指出的行和语法是造成的问题,更漂亮的格式正确。

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

{
  "editor.formatOnSave": false
}

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

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

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

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