El objetivo: crear un componente de reacción reutilizable y tener la flexibilidad de diseñar cualquier parte del componente en el futuro.
por ejemplo, creo un componente similar a un botón que quiero reutilizar en diferentes casos en el futuro y le doy diferentes estilos en los diferentes lugares donde lo uso:
function reusableButton(){ return( <View style={styles.defaultStyle}> <Text style={styles.defaultTitleStyle}>Button Title</Text> </View> )} const styles = StyleSheet.create({ defaultStyle:{ height: 50, width: 100, borderRadious: 25, backgroundColor:'red'}, defaultTitleStyle: { color:'green', fontWeight: 'bold'} })La pregunta es: ¿Cómo realizo cambios en los estilos predeterminados en el futuro cuando uso este botón?
El objetivo: crear un componente de reacción reutilizable y tener la flexibilidad de diseñar cualquier parte del componente en el futuro.
Cómo lograr esto:
Ejemplo: Crear los componentes reutilizables:
const ReusableButton = (props) =>{ return( <View style={[styles.currentButtonStyle, props.futureButtonStyle]}> <Text style={[styles.currentButtonTitle, props.futureTitleStyle]}>{props.title}</Text> </View> )}; //Here are my default styles: const styles = Stylesheet.create({ currentButtonStyle: { height:50, width: 100, backgrroundColor:'red'}, currentButtonTitle:{ color: 'white' fontSize: 20, }, })De ahora en adelante, en cualquier lugar al que desee llamar y usar ReusableButton, puede editar los estilos con los estilos futuros. Ejemplo:
function NewComponent(){ return( <View> <Text>Hi let us make use of our old reusable button</Text> <ReusableButton futureButtonStyle={{width: 200, height: 100, backgroundColor:'blue'}} futureTitleStyle={{fontWeight:'bold', fontSize: 50}}/> </View> ) }