我试图使用Saga在此基本应用程序中加载图像,我配置了Saga,看起来不错,但图像未加载。因此,我什至创建了一个按钮来检查saga是否被调用,但仍然无法正常工作。
index.js(saga)
docker service inspect {stack_name}_portal --format '{{range $key, $value := .Spec.Labels}}{{$key}}: {{println $value}}{{end}}'
store.js
import { put, takeLatest, fork, all, takeEvery } from "redux-saga/effects";
const image = ["/Users/anirudhk/Desktop/PBS/src/favicon.ico"];
function* loadImagesSaga() {
debugger;
yield put({ type: "LOAD_IMAGES_SUCCESS", data: image });
}
function* loadImages() {
debugger;
yield takeEvery("LOAD_IMAGES", loadImagesSaga);
}
export default function* rootSaga() {
yield all([loadImages()]);
}
Actions.js
import React from "react";
import { render } from "react-dom";
import { BrowserRouter as Router } from "react-router-dom";
import "bootstrap/dist/css/bootstrap.min.css";
import App from "./components/App";
import "./index.css";
import configureStore from "./redux/configureStore";
import { createStore, applyMiddleware, compose } from "redux";
import rootReducer from "./redux/reducers/index";
import createSagaMiddleware from "redux-saga";
import "regenerator-runtime/runtime";
import rootSaga from "./redux/saga/index";
import { Provider as ReduxProvider } from "react-redux";
// const store = configureStore();
const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose; // add support for Redux dev tools
const sagaMiddleware = createSagaMiddleware();
const store = createStore(
rootReducer,
composeEnhancers(applyMiddleware(sagaMiddleware))
);
sagaMiddleware.run(rootSaga);
render(
<ReduxProvider store={store}>
<Router>
<App />
</Router>
</ReduxProvider>,
document.getElementById("app")
);
homepage.js
export function loadImages() {
debugger;
return { type: "LOAD_IMAGES" };
}
LoadImages和loadImagesSaga没有被调用
答案 0 :(得分:0)
对于那些面临类似问题的人,我不得不使用useDispatch和useSelector,因为它们实际上与react-redux连接。 另外,请升级您的redux和react-redux软件包。