После просмотра некоторых ответов на подобные вопросы я просто не могу заставить свой селектор работать. Вот мой файл 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`
Я новичок в Саге. Может кто-нибудь сказать мне, что я делаю не так?