Я использую Prettier в своих проектах уже несколько недель. Мне это и вправду нравится!
Я использую IDE JetBrains WebStorm, поэтому я выполнил следующие инструкции на сайте проекта Prettier, чтобы настроить средство отслеживания файлов в WebStorm: https://prettier.io/docs/en/webstorm.html#using-file-watcher
Затем, каждый раз, когда я сохраняю файл JavaScript, Prettier автоматически запускает его, и WebStorm показывает мне изменения, как только файл сохраняется Prettier.
Я хочу, чтобы все в моей команде использовали Prettier, но не все используют WebStorm. Некоторые люди используют редакторы, которые сложно настроить с помощью Prettier. Итак, я выполнил эти инструкции на сайте проекта Prettier, чтобы настроить средство отслеживания файлов в качестве сценария npm в моем package.json
файле: https://prettier.io/docs/en/watching-files.html
"scripts": {
"prettier-watch": "onchange '**/*.js' -- prettier --write {{changed}}"
}
Я использовал пакет onchange
в качестве наблюдателя за файлами, как это предлагается в документации, и отключил средство наблюдения за файлами в WebStorm, поскольку мне не нужно, чтобы Prettier запускался дважды подряд.
Проблема в том, что когда я сохраняю файл в WebStorm, пакет onchange
запускает Prettier правильно, но я не вижу изменений в редакторе, даже когда я выключаюсь, а затем возвращаюсь в окно файла с помощью курсора мыши. Когда я пытаюсь внести новое изменение и снова сохранить, я получаю от WebStorm предупреждающее сообщение «Конфликт файлового кеша»: «В памяти и на диске были внесены изменения. Сохранить изменения в памяти, показать разницу, загрузить изменения файловой системы»
Если я выберу «Загрузить изменения файловой системы», сохраненная версия Prettier успешно загрузится. Но видеть это диалоговое окно каждый раз, когда я сохраняю, очень раздражает. Я бы предпочел, чтобы изменения отражались в WebStorm автоматически.
Похоже, что единственный способ - использовать вместо этого встроенный наблюдатель файлов WebStorm, но тогда у меня нет простого способа настроить Prettier для моих коллег, не заставляя их вручную устанавливать свои собственные независимые решения.
Итак, мой вопрос таков: Как я могу использовать общий наблюдатель файлов node.js в качестве сценария npm, который вносит изменения в мои файлы после сохранения и автоматически перезагружает эти изменения в WebStorm без этого диалогового окна?