componentWill(Did)Mount(){
const {dispatch}=this.props;
dispatch({
type:"example/fetchCurrent"
}).then(()=>{
console.log("等他执行完执行")
})
}
正常打印:等他执行完执行
报错:dispatch(...).then is not a function
dva2.1.0
经过测试:此次发起的dispatch一定要延时一定时间才会正常
@dsmelon dipatch 如果要返回一个 Promise 需要 action 为 effects,同步的 dispatch(action) 返回的为action对象。
@yvanwangl 是effects,你可以自己测试一下。不然也不会出现延时一下就正常的问题
@dsmelon 你 dva 版本是多少的?我试了可以的
找到了正解,之前dispatch reducer里面的方法使用.then各种报错,找不到原因,原来只能dispatch effects才可以使用.then()
问题有人解决了吗?我也遇到一样的问题,不知哪里错了
Most helpful comment
@dsmelon dipatch 如果要返回一个 Promise 需要 action 为 effects,同步的 dispatch(action) 返回的为action对象。