Николай, когда вы передаете иконку в cheerio там все еще исходный svg код, нет символов. Поэтому селектор не работает.
Наверное надо svg[...] [fill] или просто [id^="mono"] [fill]
Импортируем стили и шаблон в super-button.js, получаем единый компонент.
Импортируем компонент там где нам нужно единственным импортом
import SuperButton from './super-button';
Удобно? Удобно.
Дополнительно получаем плюсы tree-shaking`ка — неиспользуемый код будет эффективно вырезаться из сборки. При необходимости отщепляем стили от скриптов соответствующими плагинами в отдельный файл. При настройке чанков или динамических импортов, все будет раскидано по чанкам и подгружаться только при необходимости.
Roweb, я там частицу "не" пропустил.
В общем, если кратко — ваш метод плох, чреват осложнениями в поддержке и т.д. Лучше воспользоваться дополнительными обертками.
Вы сами собираетесь сайт делать? Воспользуйтесь конструктором типа wix.
Если будете нанимать спецов, они сами решат, на чем делать сайт, исходя из предъявленных требований.
Наверное надо
svg[...] [fill]
или просто[id^="mono"] [fill]