微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

VSCode 中 *.vue 文件的自动格式化不起作用

如何解决VSCode 中 *.vue 文件的自动格式化不起作用

我正在 VSCode 1.58.2 中开发一个 Vue.js 项目。

一切顺利;但是 *.vue 文件在保存时不会自动格式化。

我的 .vscode/settings.json

{
  "editor.formatOnPaste": true,"editor.formatOnSave": true,"editor.codeActionsOnSave": {
    "source.fixAll": true
  },"editor.defaultFormatter": "octref.vetur","javascript.format.insertSpaceBeforeFunctionParenthesis": true,"javascript.format.placeOpenBraceOnNewLineForControlBlocks": false,"javascript.format.placeOpenBraceOnNewLineForFunctions": false,"typescript.format.insertSpaceBeforeFunctionParenthesis": true,"typescript.format.placeOpenBraceOnNewLineForControlBlocks": false,"typescript.format.placeOpenBraceOnNewLineForFunctions": false
}

感谢您的帮助。

解决方法

在你的 settings.json 你应该有:

  1. [vue]: {"editor.defaultFormatter": "octref.vetur"}

  2. "vetur.format.defaultFormatter.html": "js-beautify-html" 告诉 vue 如何格式化 <template>

  3. 完整配置:

{
    "editor.formatOnSave": true,"vetur.format.defaultFormatter.html": "js-beautify-html","[vue]": {
        "editor.defaultFormatter": "octref.vetur"
    }  
}

注意:如果您有多个 .vue 文件的格式化程序,您必须指定使用哪个格式化程序,否则保存时格式将不知道使用哪个,并且默认不执行任何操作。这将选择“Vetur”作为默认值。

,

尝试了一段时间后,我可以解决问题。我的修改 .vscode/settings.json:

{
  "editor.formatOnPaste": true,"editor.formatOnSave": true,"editor.codeActionsOnSave": {
    "source.fixAll": true
  },"editor.defaultFormatter": "octref.vetur","javascript.format.insertSpaceBeforeFunctionParenthesis": true,"javascript.format.placeOpenBraceOnNewLineForControlBlocks": false,"javascript.format.placeOpenBraceOnNewLineForFunctions": false,"typescript.format.insertSpaceBeforeFunctionParenthesis": true,"typescript.format.placeOpenBraceOnNewLineForControlBlocks": false,"typescript.format.placeOpenBraceOnNewLineForFunctions": false,"[vue]": {
    "editor.defaultFormatter": "octref.vetur"
  }
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。