[英]How can I pass a value to a function when onPress is pressed in Reactnative?
我在使用 Reactnaitve 触发 onPress 的时候,执行了 photosModalControl 函数,想先获取值,还想执行 setUploadPhotos。 但是当我使用我的代码时,我得到了值,但是 setUploadPhotos 没有被执行。 如何修复代码?
这是我的代码
const photosModalControl = (value: string) => () => {
console.log(value);
setUploadPhotos(prevState => !prevState);
};
<Pressable
onPress={photosModalControl("first")}
>
</Pressable>
如果我没记错的话,你不应该这样设置你的功能:
const someFunction = (variable: type) => {
functions stuff
}
你加倍并放:
const someFunction = (variable: type) = () => {
functions stuff
}
您在 onPress 中传递函数的方式将导致在渲染时调用该函数。 而是使用这个:
const photosModalControl = (value: string) => () => {
console.log(value);
setUploadPhotos(prevState => !prevState);
};
<Pressable onPress={()=>photosModalControl("first")}>Button</Pressable>
这样,您可以将任意数量的参数传递给您的函数
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.