Con referencia al código a continuación, ¿cómo puedo escribirlo para que cuando se llame a onFocus y onChangeText, el valor de marginTop cambie de 3 a 5?
<Block> <Text marginTop={3}>TEXT</Text> <Block> <Input keyboardType="phone-pad" placeholder="Phone number" defaultValue={details?.phone} onChangeText={(value) => onChange({ phone: value })} onFocus? /> </Block> </Block>
Cualquier pista sería muy apreciada. Gracias por adelantado.
el margen cambia cuando se llama a onChangeText
o onFocus
const [changeMargin, setChangeMargin] = useState(false) ; <Block> <Text marginTop={changeMargin ? 5: 3}>TEXT</Text> <Block> <Input keyboardType="phone-pad" placeholder="Phone number" defaultValue={details?.phone} onChangeText={(value) => { if(value !=null && value.length >0){setChangeMargin(true) ;}else{setChangeMargin(false) ;}; onChange({ phone: value })}} onFocus={()=>{setChangeMargin(true)}} /> </Block> </Block>
const [move, setMove] = useState(false) <Block> <Text marginTop={3}>TEXT</Text> <Block> <Input keyboardType="phone-pad" placeholder="Phone number" defaultValue={details?.phone} onChangeText={(value) => setMove(true) style={move && /* do something*/} onFocus? /> </Block> </Block>