Я создал настраиваемый компонент, который хочу многократно использовать в своем приложении. Компонент сам использует TouchableHighlight внутри него.
Я хочу, чтобы использование компонента могло проходить через реквизиты TouchableHighlight без необходимости объявлять их отдельно внутри пользовательского компонента.
Очень простой пример:
Составная часть:
const CustomComponent = () => (
<TouchableHighlight>
<Text>Custom component</Text>
</TouchableHighlight>)
Использование:
<CustomComponent activeOpacity = {0.5} underlayColor=“red” onPress = {someAction} />
Подводя итог, я бы хотел, чтобы TouchableHighlight использовал activeOpacity, underlayColor и onPress без необходимости выделять их внутри компонента по отдельности.
Надеюсь, это имеет смысл, и я объяснил это достаточно.
Вы можете разложить реквизит, если вы просто хотите, чтобы он прошел.
const CustomComponent = (props) => (
<TouchableHighlight ...props>
<Text>Custom component</Text>
</TouchableHighlight>)
Попробуй это:
const CustomComponent = ({touchableHighlightProps, ...otherProps}) => {
return (
<TouchableHighlight {...touchableHighlightProps}>
<Text>Custom component</Text>
</TouchableHighlight>
)
}
Тогда использование будет:
<CustomComponent touchableHighlightProps = {touchableHighlightProps} />
нп, рад, что могу помочь
Ок круто спасибо. Не знал, что я могу передавать реквизит в таком объекте. Извините, если это был нубский вопрос - спасибо за ответ!