在使用react-router和redux进行异步派单后,应在组件的生命周期方法中更新位置。
具体来说,可以在组件的componentDidMount
生命周期方法中进行位置的更新操作。在这个方法中,可以调用异步派单的action,并在其回调函数中更新位置信息。
以下是一个示例代码:
import React, { Component } from 'react';
import { connect } from 'react-redux';
import { fetchOrder, updateLocation } from 'redux/actions';
class OrderDetails extends Component {
componentDidMount() {
const { orderId, fetchOrder, updateLocation } = this.props;
// 异步派单
fetchOrder(orderId, (order) => {
// 更新位置信息
updateLocation(order.location);
});
}
render() {
// 渲染订单详情页面
return (
// ...
);
}
}
const mapDispatchToProps = {
fetchOrder,
updateLocation,
};
export default connect(null, mapDispatchToProps)(OrderDetails);
在上述代码中,componentDidMount
方法中调用了fetchOrder
异步派单的action,并在其回调函数中调用了updateLocation
更新位置信息的action。这样,在组件挂载后,会触发异步派单操作,并在派单成功后更新位置信息。
需要注意的是,上述代码中的fetchOrder
和updateLocation
是示例代码,具体的实现可能会根据项目的具体情况有所不同。你可以根据实际需求来编写相应的action和reducer,并在组件中进行调用和处理。
领取专属 10元无门槛券
手把手带您无忧上云