当我们使用VSCODE自动格式化JavaScript时,通常会使用到VeTur和Prettier两款插件进行格式化,但我的项目是两个,一个基于Flask搭建的API系统(通过meta引入Vue),一个基于Vue-Cli搭建的SPA应用

这个时候设置项就很奇怪了,在非Vue文件里,需要在设置setting.json中添加如下prettier配置,可强制所有HTML文件的JavaScript不带分号

{
  "python.linting.pylintEnabled": true,
   ......
  "prettier.semi": false, // 使用prettier格式化HTML文件时不带分号  
  "prettier.singleQuote": true, // 使用prettier格式化HTML文件时强制使用单引号
   ......
}

当你的项目是Vue脚手架搭建的时候,上面的设置又是无效的,因为使用到VeTur进行格式化Vue文件,所以需要把prettier设置项引入vetur.format.defaultFormatterOptions

{
    "window.zoomLevel": 0,
    ......
    "vetur.format.defaultFormatter.js": "vscode-typescript",
    "vetur.format.defaultFormatterOptions": {
        "prettier": {
            "semi": false,          // 使用prettier格式化HTML文件时不带分号
            "singleQuote": true     // 使用prettier格式化HTML文件时强制使用单引号
        },
        ......
    },
}