Расширение VSCode Prettier против командной строки Prettier - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть проблема, когда форматирование HTML-файла в VSCode, «при сохранении», отличается от форматирования Преттье при использовании командной строки.

Мои пользовательские настройки (изменение этих значений, кажется, не имеет никакого значения):

{
    "[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 голосов
/ 15 февраля 2019

Мне нужно было создать файл .prettierrc со следующим содержимым:

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

В командной строке использовался синтаксический анализатор html, в то время как VSCode использовал синтаксический анализатор angular.Таким образом, они оба используют один и тот же парсер для .html файлов.

...