Dva: effect的中断

Created on 28 Jul 2017  ·  5Comments  ·  Source: dvajs/dva

在异步请求时,如果请求出现异常,在effect中的call返回的数据往往会出错,此时我想要就此中断effect的执行,不再继续执行generator,请我我应该如何做才能中断effect的继续执行。

question

All 5 comments

可以在异步请求那里处理出错返回false,然后effect中判断
const data = yield call(xx);
if(data){//执行}

我想要的是在effect外部来中断genneratar,不知道可不可行

try {} catch(e) {} 包一下,请求出错 reject Promise 就会抛错,然后这个 effect 自然就终止了。

恩,多谢,我去试试看

@sorrycc @luke93h

用 try {} catch(e) {} 包一下,请求出错 reject Promise 就会抛错,然后这个 effect 自然就终止了。

是指以下写法?

try {
    const data = yield call(xx);
} catch(e) {}
Was this page helpful?
0 / 5 - 0 ratings