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

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

我的.prettierrc设置:

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

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


当前回答

你可以试着把这个部分添加到你的VS Code设置中吗?json文件吗?

"[javascript]": {
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "editor.formatOnSave": true,
},

其他回答

如果其他答案都不起作用,请检查工作目录中不存在冲突的更漂亮配置. pretierrc,或检查. pretierignore以确保文件/文件夹没有被忽略。

对我来说,问题是HTML文件的格式有一天停止工作。我设置了保存格式,它适用于除HTML以外的所有文件。

然后我意识到,我试验性地将保存模式的格式设置为修改而不是文件,然后忘记了它。这对HTML文件中的任何内容都没有格式化的影响,令人惊讶的是,即使是我的更改也没有格式化。将其设置回文件解决了这个问题。

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

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

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

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

在我的情况下,我使用的是一台windows机器,原来文件系统已经损坏,因此漂亮的提出了一个错误,因为它无法打开配置文件,由于文件系统损坏。

为了解决这个问题,我在终端上运行chkdsk /f h:,其中h是文件分区。

这解决了文件腐败和漂亮的现在工作正常。