要求:我必须用2种不同的颜色(除了红色和白色)眨眼2秒。我可以用这个代码-
const [state, setState] = React.useState(false)
const [initialState, setInitialState] = React.useState(0)
React.useEffect(() => {
if (initialState < 2){
let interval = setInterval(() => {
setState(true)
setInitialState(initialState + 1)
setTimeout(() => {
setState(false)
}, 80);
}, 300);
setTimeout(() => {
clearInterval(interval)
}, 600);
}
}, [initialState])把它叫做-
<View style={{...styles.mainContainer, backgroundColor: state ? Colors.GRO7 : Colors.GRC9}}>另一个要求:我有另一个屏幕--我更改了地址,在成功更改地址时,我必须再次闪烁这个视图2秒。我不知道在哪里可以再次将初始值重置为0。
我是新的反应本土化的,有人能指导我如何实现这个功能吗?
发布于 2021-09-14 13:02:12
不能完全理解你的目标是什么。
这里是一个闪烁的文本示例
发布于 2021-09-14 14:49:24
您可以将初始值传递给此组件,而不是在该行中定义0:
const [initialState, setInitialState] = React.useState(0)您可以传递一个param,并将其放入其中,而不是0,这样每当param更改时,这个组件都会重新呈现。所以你得到了一个新的初始状态。例如:
const [initialState, setInitialState] = React.useState(initialValue)https://stackoverflow.com/questions/69177749
复制相似问题