gpt4 book ai didi

react-native - 如何使用 useRef 获取 TextInput 值?

转载 作者:行者123 更新时间:2023-12-05 08:13:24 25 4
gpt4 key购买 nike

我尝试获取 TextInput 的值

useRef

但它给出了未定义的。这是我的代码:

const inputRef = useRef(null);
<TextInput
ref={inputRef}
value={'test'}
editable={false}
style={styles.InputStyle}
/>
console.log(inputRef.current.value) ---> gives undefined

最佳答案

如果你想访问 TextInput 的值,你最好使用状态 https://facebook.github.io/react-native/docs/state.html作为以下功能组件:

  const [inputValue,setInputValue] = React.useState('');
//Getting state value
console.log(inputValue);
return (
//Setting state Value using setInputValue
<View>
<TextInput placeholder="Test" onChangeText={(value)=>setInputValue(value)}/>
</View>
)

有状态组件示例:

 state = {
inputValue: '',
};

render(){
//Using state value
console.log(this.state.inputValue);
return (
//Setting state value
<View>
<TextInput placeholder="Test" onChangeText={(value)=>this.setState({inputValue: value})}/>
</View>
)
}

如果你想对输入使用 ref 你应该使用 useRef Hook:

export default function App() {
const refForInput = useRef(null);

const printValueOfInputUsingRef = () => {
//to get the value u from a ref you should access it via
//ref.current.value object
console.log(refForInput.current.value);
}
return (
<View>
<TextInput ref={refForInput} value={'Some Value'}/>
<Button onPress={handleOnPress}>Show The Value</Button>
</View>
);
}

关于react-native - 如何使用 useRef 获取 TextInput 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65884891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com