reactjs - 如何使用从承诺返回的函数取消订阅 useEffect?
问题描述
我调用一个promise,它返回一个取消订阅函数。如何使用中的返回功能取消订阅useEffect
?
useEffect(()=>{
let unSub = ()=>{}
async function run(){
unSub = await promise();
}
run();
return unSub
})
想到这样的事情,不知道是不是正确的做法,react 的做法是什么?
解决方案
// on component mount
useEffect(() => {
// do some stuff ie. subscribe
// on component unmount
return () => {
// do some stuff ie. unsubscribe
}
}, [/* dependencies */])
推荐阅读
- c++ - 为什么整数类型 int64_t 不能保持这个合法值?
- sql - 在 SQL 中将两条记录分组为一条记录
- java - 如何覆盖在另一个已继承的类中赋予值的变量
- excel - 如何在excel中的每一行中重复命令按钮
- react-native - 在Android@react-native 0.60.2 上运行项目,构建成功但没有任何反应
- python - 使用 python 写入一个单元格中包含多行的 csv 文件
- ruby - 错误:启动 jekyll 服务器时未初始化的常量 FFI::Platform::CPU
- r - 什么是简单混合模型代码 (R) 中的“+0”?
- html - 如何防止一个标签破坏另一个标签的居中
- javascript - Tinymce 能否给我一些保留所有样式的准确 HTML 内容(真的是所见即所得)?