使用 useEffect 对组件卸载执行分派

时间:2020-12-21 06:33:47

标签: reactjs react-props use-effect

-我有一个 redux 状态。

-使用connect的mapStateToProps,我已经设置:

const mapStateToProps = (state) => ({
  alertItems: state.alertState,
});

-并且使用 mapDistachToProps,我已经设置:

const mapDispatchToProps = (dispatch) => ({
  removeAlert: (id) => dispatch(removeAlert(id)),
});

-组件内部(<Register />),

export const Register = (props) => {
const {alertItems, removeAlert} = props;
useEffect(() => {
    return () => {
      alertItems.map((alert) => removeAlert(alert.id));
    };
  }, []);
return (<div> </div>)
};

当我们卸载 <Register/> 组件时,我想清除所有的 alertItems 吗?正如您在此处看到的,我尝试通过 alertItems 数组进行映射,并通过它的 id 值将其删除,但该值不起作用。

有什么解决办法吗?

0 个答案:

没有答案