如何避免重新渲染文本输入?

2 javascript react-native

我有一个TextInput,我不希望每次更改其中的值时都重新渲染

const [WrittenVal,setWrittenVal] = useState(()=>'');
...
    <TextInput
        value={String(WrittenVal)}
        onChangeText={text => setWrittenVal(text)}
    />
Run Code Online (Sandbox Code Playgroud)

我希望能够通过按下按钮来更改输入内的值,这就是为什么我不只是使用defaultValue

有什么解决办法吗??

小智 6

const inputRef = useRef();

<TextInput
   ref={inputRef}
   onChangeText={text => inputRef.text = text }
/>


//function to get input value
const handleSubmit = () => {
    let textInputValue = inputRef.text;
}
Run Code Online (Sandbox Code Playgroud)