Независимо от стека технологий:
Для разноцветных иконок, подойдет только 2 технологии:
inline svg
svg symbol sprite
- У обоих есть недостатки, но рабочиие. Все остальные подходы - вообще шлак.
Для одноцветных svg иконок, подходит генерация шрифтов из иконок.
Мне ближе svg symbol sprite: (не работают svg градиенты, некоторые не правильно сохраненные иконки могут сломать весь спрайт)
Причем меня устраивает, только когда кидаю иконки в определенную папку и она автоматом попадает в спрайт, то есть сразу могу ее использовать. Есть плагины для которых нужно делать import каждой иконки, перед использованием - они легко ставятся и настраиваются, но жутко не удобны
Модуль для nuxt:
https://github.com/nuxt-community/svg-sprite-module
* Может не работать с другими модулями для свг...
Vue cli:
https://github.com/swisnl/vue-cli-plugin-svg-sprite
* Не проверял, но вроде то что надо