✨ Polymorpheus: очень нужная деталька пазла Angular
Почти каждому знакома история, когда пишешь компонент, и кажется, что для тултипа или заголовка диалога хватит обычной строки. Потом внутрь просят добавить ссылку или картинку, потом этот же блок хочется переиспользовать на другой странице и API переписывается заново.
Александр Инкин показал, как перестать угадывать заранее. Он разобрал способы отображения данных, доступные в Angular из коробки, и пришел к выводу, что принципиальной разницы между ними нет, каждый просто берет контент и показывает его в некотором контексте.
Отсюда и выросла библиотека Polymorpheus, которую в Taiga UI используют повсюду. Компонент объявляет, что принимает контент, а дальше в него можно передать: примитивное значение, функцию, шаблон или отдельный компонент. Работает одинаково, переделывать ничего не нужно.
👉 https://habr.com/ru/articles/1082888/
Почти каждому знакома история, когда пишешь компонент, и кажется, что для тултипа или заголовка диалога хватит обычной строки. Потом внутрь просят добавить ссылку или картинку, потом этот же блок хочется переиспользовать на другой странице и API переписывается заново.
Александр Инкин показал, как перестать угадывать заранее. Он разобрал способы отображения данных, доступные в Angular из коробки, и пришел к выводу, что принципиальной разницы между ними нет, каждый просто берет контент и показывает его в некотором контексте.
Отсюда и выросла библиотека Polymorpheus, которую в Taiga UI используют повсюду. Компонент объявляет, что принимает контент, а дальше в него можно передать: примитивное значение, функцию, шаблон или отдельный компонент. Работает одинаково, переделывать ничего не нужно.
👉 https://habr.com/ru/articles/1082888/