gpt4 book ai didi

javascript - redux-saga 中的选择问题。错误 : call: argument of type {context, fn} 具有未定义或空 `fn`

转载 作者:行者123 更新时间:2023-12-01 15:04:39 26 4
gpt4 key购买 nike

在这里查看类似问题的一些答案后,我无法让我的选择器工作。这是我的 selector.js:

export const getButtonStatus = state => state.buttonStatus;

(这就是文件的全部内容。我不知道我是否必须将任何内容导入其中。从我在这里看到的其他答案看来似乎不是这样。)

这就是我试图在我的传奇中访问选择器的地方:
import { takeLatest, call, put, select } from "redux-saga/effects";
import { getButtonStatus } from "./selector.js";
...
export function* watcherSaga() {
yield takeLatest("get-tweets", workerSaga);
}

function* workerSaga() {
try {
const buttonStatus = yield select(getButtonStatus);
const response = yield call(getTweets(buttonStatus));
const tweets = response.tweets;
yield put({
type: "tweets-received-async",
tweets: tweets,
nextTweeter: response.nextTweeter
});
} catch (error) {
console.log("error = ", error);
yield put({ type: "error", error });
}
}
...

这是我收到的错误:
 Error: call: argument of type {context, fn} has undefined or null `fn`

我是佐贺的新手。谁能告诉我我做错了什么?

最佳答案

错误不在于您的选择器,而在于您的 yield call - 将函数作为 arg 后跟要传递给函数的参数:https://redux-saga.js.org/docs/api/#callfn-args .所以应该是:
const response = yield call(getTweets, buttonStatus);
否则看起来不错!

关于javascript - redux-saga 中的选择问题。错误 : call: argument of type {context, fn} 具有未定义或空 `fn`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58479772/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com