Полезная информация, сами в проекте негласно следуем подобным договорённостям. Но не совсем понятно правило трёх DOM-ов, имеются ввиду количество каких-то wrapper-ов на одной странице?
Svg-спрайты — это лишь один из способов работы с иконками со своими плюсами и минусами, точно так же как и тот, что я описал в статье. А что использовать в своих проектах, уже остаётся на выбор разработчика
В таком случае, да, стоит пересмотреть систему импорта, и возможно, лучшей практикой будет импортировать иконки уже как отдельные компоненты, например: import IconArrow from “@/icons/IconArrow”, но опять же, это если есть такая необходимость. На моём опыте чаще всего встречаются проекты, где система импорта, которую я описал в статье, более чем уместна.
Да, вы правы, импорт @svgr/webpack, действительно, лишний. Как и @svgr/core, так как @svgr/cli самостоятельно его подтягивает.
В текущей реализации index файл генерируется автоматически. Даже если его до этого не существовало, он создаётся в папке, которую мы указали в outDir, при запуске команды.
По поводу активной разработки, да, как я описал в заключении, эту систему можно улучшать, один из вариантов — это добавить процесс "наблюдения" за папкой с исходными svg-файлами и автоматическим запуском преобразования в компоненты.
Полезная информация, сами в проекте негласно следуем подобным договорённостям. Но не совсем понятно правило трёх DOM-ов, имеются ввиду количество каких-то wrapper-ов на одной странице?
Svg-спрайты — это лишь один из способов работы с иконками со своими плюсами и минусами, точно так же как и тот, что я описал в статье. А что использовать в своих проектах, уже остаётся на выбор разработчика
В таком случае, да, стоит пересмотреть систему импорта, и возможно, лучшей практикой будет импортировать иконки уже как отдельные компоненты, например:
import IconArrow from “@/icons/IconArrow”
, но опять же, это если есть такая необходимость. На моём опыте чаще всего встречаются проекты, где система импорта, которую я описал в статье, более чем уместна.Да, вы правы, импорт
@svgr/webpack
, действительно, лишний. Как и@svgr/core
, так как@svgr/cli
самостоятельно его подтягивает.В текущей реализации index файл генерируется автоматически. Даже если его до этого не существовало, он создаётся в папке, которую мы указали в outDir, при запуске команды.
По поводу активной разработки, да, как я описал в заключении, эту систему можно улучшать, один из вариантов — это добавить процесс "наблюдения" за папкой с исходными svg-файлами и автоматическим запуском преобразования в компоненты.