VSCode更漂亮的扩展vs命令行更漂亮

时间:2019-02-14 21:53:06

标签: visual-studio-code prettier

我有一个问题,即使用命令行时,VSCode中的HTML文件格式“保存”与Prettier的格式不同。

我的用户设置(更改这些值似乎没有什么不同):

{
    "[html]": {
        "editor.formatOnSave": true
    },
    "prettier.eslintIntegration": false,
    "html.format.enable": false
}

当我从命令行运行Prettier时,我的HTML格式如下:

prettier --write "./src/app/my-file.html"

my-file.html:

<a ng-hide="$last" href="" ng-click="doThis(thing)"
  >{{ crumb.title }}</a
>

将文件保存在VSCode中时使用相同的代码(允许Prettier扩展名进行格式化):

<a ng-hide="$last" href="" ng-click="doThis(thing)">{{
  crumb.title
}}</a>

我知道扩展程序已安装并且正在运行,因为我在屏幕的右下角看到了此图标:

enter image description here

然后,当我将鼠标悬停在该图标上时,会看到提示prettier@1.16.3的工具提示,该提示与我在命令行prettier -v上安装的版本相同

为什么这两种方法会得到不同的结果?除了以上内容,我没有更改任何设置

1 个答案:

答案 0 :(得分:0)

我需要创建一个包含以下内容的.prettierrc文件:

{
  "overrides": [
    {
      "files": "*.html",
      "options": {
        "parser": "html"
      }
    }
  ]
}

命令行使用html解析器,而VSCode使用angular解析器。这样,他们都为.html文件使用了相同的解析器。