react-native - 防止多次调用 onPress
问题描述
我有一个通过 redux 操作添加项目的底部。
onPress={() => {
this.props.navigation.navigate('Home')
store.dispatch(add(construct(name)))
}}
有时 onPress 一次点击会被多次调用,它会添加多个项目。我想阻止这种情况。当然我可以做一个布尔值并检查它是否为真,但这不是很优雅的方式。有没有更好的预防方法?
解决方案
你说的简单方法是定义一个布尔标志,但解决问题的另一种方法是使用 redux-saga。我知道 redux-saga 旨在解决异步操作,但它也可以在这里为您提供帮助。takeLatest
从这里检查。通过此助手,如果您单击多次,它将仅运行最新的一次。
推荐阅读
- python - Pandas - 写实木复合地板并将列保持为十进制
- c# - 将数据从 XML 添加到组合框的 C# 问题
- macos - 如何安排脚本作业(macos)
- html - 单击复选框后突出显示标签项
- mongoose - 与 Mongoose Schema 关联的 Multer GridFS 存储文件上传
- android - Flutter中如何自定义列表视图的各个界面?
- react-router - 为什么和
不触发连接反应路由器中 state.router 的更新? - json - 如何从 Gin 中发布的 JSON 中获取特定参数?
- ios - Xcode 11.0 beta 中的“Command CompileSwift 以非零退出代码失败”
- sql-server - SQL Server 重命名表