在我安装并启用了ESlint和Prettier的Nuxt应用程序中,我切换到Visual Studio Code。
当我打开一个.vue文件并按CMD+ Shift + P并选择格式化文档时,我的文件根本没有被格式化。
我的.prettierrc设置:
{
"tabWidth": 2,
"semi": false,
"singleQuote": true
}
我有这么多源代码行,所以我不能手动格式化它们。我做错了什么?
在我安装并启用了ESlint和Prettier的Nuxt应用程序中,我切换到Visual Studio Code。
当我打开一个.vue文件并按CMD+ Shift + P并选择格式化文档时,我的文件根本没有被格式化。
我的.prettierrc设置:
{
"tabWidth": 2,
"semi": false,
"singleQuote": true
}
我有这么多源代码行,所以我不能手动格式化它们。我做错了什么?
当前回答
在VSCode中启用“保存格式”:设置>>用户>>文本编辑器>>格式化对我有用!
其他回答
如果做什么@Simin Maleki提到的不能解决你的问题,有一个机会,你的默认格式化器没有设置:
File > Preferences > Settings > Search for "default formatter"
确保“Editor: Default Formatter”字段不为空,而是“Prettier - Code Formatter”(esbenp.prettier-vscode),并且勾选以下所有语言。这解决了我的问题。
一步一步的演练
同时确保保存时的格式是启用的:
你可以试着把这个部分添加到你的VS Code设置中吗?json文件吗?
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
},
在我的例子中,我使用一个不存在的配置文件(见下面的屏幕截图)配置得更漂亮。这很难找到,因为没有任何错误消息,但漂亮的只是没有工作。也许这也能帮助到别人。
这不是pretty本身的问题,而是pretty - VSCode, VSCode扩展的问题。根据Vue的文档,Vue格式默认是禁用的:
更漂亮。disableLanguages(默认值:["vue"]) 要禁用此扩展的语言id列表。需要重新启动。注意:禁用父文件夹中启用的语言将阻止格式化,而不会让任何其他格式化程序运行
在这种情况下,启用您应该设置“更漂亮。disableLanguages”:[]。由于这是一个扩展配置,你应该在VSCode设置文件,而不是。pretierrc。
对我来说,当我在. preterrc文件中去掉parser: json时,它起作用了。