их зарендерить имею общую компоненту и передаю пропс color:
<Icon color="red">
У компоненты Icon логика такова
Я создала массив объектов icons = [{ component: <RedIcon/>, color:'red'}, ...]
const icon = icons.find(item => item.color == color)
return <> { icon.component} </>
Как сделать так,чтобы Icon можно было передавать прос isBig, чтобы она пошла как пропс потом в RedIcon, BlueIcon? Так как в методо рендера у нас icon.component,а не <RedIcon/> как там передавать этот пропс?
как-то всё слишком сложно))
const icons = [{ component: RedIcon, color:'red' }] const icon = icons.find(item => item.color == color) const Component = icon.component return ( <> <Component prop={prop} /> </> )
const icons = [{ component: RedIcon, color:'red' }] const { component: Component } = icons.find(item => item.color == color) return ( <Component prop={prop} /> )
Отлично, спасибо!!
Обсуждают сегодня