#npm #webstorm #npm-link
Вопрос:
У меня есть проект, который экспортирует пакет для использования в других проектах (некоторый код infra). Я опубликовал его в локальном репозитории, а затем установил в своем основном проекте. Мне нужно продолжать работать над этим инфра-проектом и обновлять его в более крупном проекте. У меня нет проблем с запуском сценариев для этого, но я не хочу увеличивать версию пакета и продолжать публиковать его при любых изменениях.
Я знаю об npm link
этом и пытался использовать его, но, похоже, из-за некоторого кэширования в WebStorm он не обновляется в основном проекте. На самом деле мне иногда нужно аннулировать кэши и перезапустить среду IDE после изменений в пакете infra — и это большой потребитель времени.
Есть ли способ сообщить WebStom: «Для этого пакета npm я хочу, чтобы вы использовали этот путь вместо фактического пакета npm»? Или использовать функцию «Прикрепить проект», чтобы сделать это, когда оба открыты?
Правка: Немного поработав таким образом, я обнаружил, что необходимость аннулировать кэш связана только с изменениями, связанными с TS, то есть когда я добавляю классы или изменяю подписи. Я могу написать правильный код, и он работает, но TS показывает ошибки и не выполняет автозаполнение, пока я не аннулирую кэш. И перезапуск службы TS не помогает.
Комментарии:
1. git-подмодули-это один из способов описания зависимостей внешнего репо; он также позволяет отслеживать версии для вашего основного проекта и внешних репо независимо.
2. @KodeCharlie git-подмодули фактически помещают пакет infra в качестве физической части основного проекта. Теперь предположим, что я хочу повторно использовать его в другом проекте — я не смогу легко редактировать пакет infra, потому что он не будет подмодулем этого другого проекта.