内部收益。然后承诺响应函数抛出错误

时间:2017-05-15 12:16:10

标签: javascript reactjs redux-saga

以下代码抛出错误:

  syncData().then((x) => yield put(loginUserSuccess(responseData)));

错误:保留关键字'yield'。

同步数据处理获取数据的异步操作。我想使用yield put(由sagas.js提供)在执行同步数据后触发操作登录用户成功。

syncData函数的核心如下:

  export default async function syncData(dataType) {
      await Promise.all([syncData1(), syncData2()]);
  }

1 个答案:

答案 0 :(得分:2)

尝试使用call效果然后使用put效果将其分开:

try {
  const res = yield call(syncData) 

  yield put(loginUserSuccess(res))

} catch(e) {

  yield put(loginUserFail(e))

}