React Native:如何检测功能组件将被卸载



My RN 0.62.2应用程序需要在功能组件卸载之前自动保存页面数据。其想法是,当用户关闭页面时(由于用户可能会放大模式屏幕中的图像,因此检测失焦可能不起作用(,然后自动触发保存(到后端服务器(。既然是功能组件,如何知道组件何时卸载?

以下是功能组件应做的示例代码:

const MyCom = () => {

//do something here. ex, open gallery to upload image, zoon in image in `modal screen,  enter input`

if (component will unmount) {
//save the data by sending them to backend server
}
}

useEffect每次渲染都会触发,如果每次渲染都保存到后端服务器,则会出现性能问题。自动保存仅在组件卸载前发生一次。用户可以点击BackHome按钮离开页面。

Yoı必须对功能组件中的组件WillUnmount使用useEffect。

const MyCom = () => {
//do something here. ex, open gallery to upload image, zoon in image in 
useEffect(() => {
// Component Did Mount
return () => {
// ComponentWillUnmount
}
},[])
return(/*Component*/)
}

相关内容

  • 没有找到相关文章

最新更新