以下代码抛出错误:
syncData().then((x) => yield put(loginUserSuccess(responseData)));
错误:保留关键字'yield'。
同步数据处理获取数据的异步操作。我想使用yield put(由sagas.js提供)在执行同步数据后触发操作登录用户成功。
syncData函数的核心如下:
export default async function syncData(dataType) {
await Promise.all([syncData1(), syncData2()]);
}
答案 0 :(得分:2)
尝试使用call
效果然后使用put
效果将其分开:
try {
const res = yield call(syncData)
yield put(loginUserSuccess(res))
} catch(e) {
yield put(loginUserFail(e))
}