小编tus*_*ior的帖子

在react-redux中异步操作后更新状态

总体思路是,有人单击按钮,操作从服务器获取数据并发送它。状态正在更新,页面上的内容正在发生变化。该动作看起来完全像这样:

     export function getPosts(page){
     return function(dispatch){
      axios.get(`${ROOT_URL}/home?page=${page}`)
          .then(response => {
            dispatch ({
            type: FETCH_POSTS,
            payload: response.data        
          })
          })
          .catch((error) => {
            console.log(error)
          });
    }
    }
Run Code Online (Sandbox Code Playgroud)

减速器非常简单:

      export default function(state={}, action){
      switch(action.type){
        case FETCH_POSTS:
        return {posts: action.payload, ...state};
      }
      return state;
    }
Run Code Online (Sandbox Code Playgroud)

主页看起来就像这样:

    import React, { Component } from 'react';
    import * as actions from '../actions';
    import RequireAuth from './auth/require_auth';
    import { connect } from 'react-redux';
    import { compose } from 'redux';
    class Home extends Component {

    constructor(props) {
      super(props);
      this.state …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs redux

5
推荐指数
1
解决办法
6943
查看次数

标签 统计

javascript ×1

reactjs ×1

redux ×1