ReactNative Hooks

React hooks useRef 缓存对象、缓存值

2021-04-26  本文已影响0人  精神病患者link常

1.缓存对象

2.缓存值

1.缓存对象,拿到对象即可对对象操作,比如input的方法,video的方法等

const textInputRef = useRef()
<TextInput ref={textInputRef}/>

2.缓存值

在hook的函数中是没有办法缓存一个值的

export default MineCenter=({ route, navigation })=>{
  const [value,setValue] = useState('')
  let newValue = 0
  return (
    <View style={styles.mainView}>
      <TouchableOpacity onPress={()=>{
        newValue = 1
        setValue('你好')
      }}>

      </TouchableOpacity>
      <Text>MineCenter</Text>
    </View>
  );
};

点击按钮虽然设置了newValue,但是一旦setValue,函数重新刷新,newValue的值又会被重置
如果newValue也是用�useState,又造成不必要的刷新

⚠️怎么不刷新又能缓存newValue的值呢?useRef

声明变量
const newValueRef = useRef(0) 

点击按钮,就算之后set也正常
newValueRef.current = 1
上一篇下一篇

猜你喜欢

热点阅读