首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何利用Redux-thunk调度功能

如何利用Redux-thunk调度功能
EN

Stack Overflow用户
提问于 2022-02-12 13:00:11
回答 1查看 540关注 0票数 1

我尝试使用Redux-thunk来调度函数,但是获取错误的操作必须是普通的对象。使用自定义中间件进行异步操作

index.js

代码语言:javascript
复制
import { Provider } from 'react-redux';
import thunk from 'redux-thunk';
import { App } from './components/App'
import reducer from './services/store/reducer';


const store = createStore(reducer,
  compose(window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__(),
    applyMiddleware(thunk)
  )
)

ReactDOM.render(
  <React.StrictMode>
    <Provider store={store}>
      <App />
    </Provider>
  </React.StrictMode>,
  document.getElementById('root')
);

动作

代码语言:javascript
复制
export const getTicketsData = () => async (dispatch) => {
    dispatch(setLoadingStatus());
    const { searchId } = await getSearchID();
    dispatch(setSearchID(searchId));
    try {
        const { tickets, stop } = await getTickets(searchId);
        dispatch(addTicketsData(tickets));
        dispatch(setLoadedStatus());
        dispatch(allTicketsLoaded(stop));
    } catch (error) {
        console.log(error)
        dispatch(serverError());
    }
}

组件

代码语言:javascript
复制
    useEffect(() => {
        dispatch(getTicketsData());
    }, []);

我不明白,请帮帮忙

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-14 19:43:22

applyMiddleware中需要更改window.__REDUX_DEVTOOLS... <->

代码语言:javascript
复制
const store = createStore(combineReducers(rootReducer()),
  compose(
    applyMiddleware(thunk),
    window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
  )
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71092059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档