我想在返回中使用 useEffect (确切地说,在多个 View 中的 Text 中),据我所知,我必须使用 {...} 来说明我写的是一些代码。Howether我得到了一个没有错误的空白屏幕,我不知道我的代码问题出在哪里。这是代码:
const [pass, setPass] = useState(0);
...
return (
<View>
<FlatList
data={letter.description}
numColumns={2}
keyExtractor={(_, index) => index.toString()}
renderItem={({ item }) => {
if (pass >= letter.description?.length) {
useEffect(() => {
setPass((prev) => 0);
});
}
return (
<View>
<Text>
{letter.data[pass]}
{"\n"}
</Text>
<Text>
{letter.description[pass]}
{useEffect(() => {
setPass((prev) => prev + 1);
})}
{"\n"}
</Text>
</View>
);
}}
/>
</View>
信是我的数据,但你可以忽略它。我只是把它放在这里解释为什么我需要通行证
为什么要使用 useEffect 来设置状态?
只需设置状态:
if (pass >= letter.description?.length) { setPass((prev) => 0); }
当你想渲染它时,你可以使用 UseEffect 来渲染你的组件。
更多内容在这里:https://reactjs.org/docs/hooks-effect.html
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句