javascript - 如何创建返回有效负载的 Redux Saga
问题描述
您好,我想知道我的代码有什么问题:
即使我的 ajax 请求有效,但payload
对象始终未定义。
如果我正确理解 sagas,该fetchWord
函数应该等待fetchWordRequest
promise 被解决,对吗?
export function* fetchWordSaga(action) {
try {
const { payload } = yield call(fetchWordRequest, action.payload);
if (typeof payload !== "undefined") {
yield put({
type: types.FETCH_WORD_SUCCESS,
payload: digestResponse(payload)
})
} else {
throw new Error("payload is undefined");
}
}
catch(error) {
yield put({
type: types.FETCH_WORD_ERROR,
error: error.message
})
}
}
export function fetchWordRequest({word, params}) {
let { lang, filters } = params;
let url = `https://.../${lang}/${word}`;
return axiosConfig.get(url)
.then(response => {
return response;
})
.catch(error => {
throw error
})
}
解决方案
推荐阅读
- python - 我将如何在此代码中放置图像以便它可以滚动?
- javascript - 处理 jQuery/JavaScript 中任何 HTML 元素的制表符
- c++ - 无法满足范围约束::count()
- winapi - 汇编程序中的中断服务(int 21h)及其行为(w/OllyDbg)
- php - PHP中的list()函数,它是否完全等于表达式第一个中的括号?
- time-complexity - 确定Java中的时间复杂度
- python - 如何在 python 上从文档图像中获取信息,例如名称、CPF、RG?
- r - seq_len(nrow(pts)) 参数中的错误必须强制转换为 vegan 中的非负整数
- android - 无法打开android的根文件夹
- javascript - 如何同时打印“PUT”和“POST”方法?