Как очистить массив редуктора после выполнения действия - PullRequest
0 голосов
/ 24 июня 2019

Мне нужно отобразить список пользователей, и при нажатии кнопки я хочу отобразить текст внутри кнопки. UserHeader - это компонент, который я импортирую из своего списка записей. Я понимаю, что действие воздействует на все элементы списка после того, как я нажимаю кнопку, и я думаю, что это потому, что массив состояний редуктора заполняется записью, и каждый раз, когда я отображаю UserHeader, он отображает текст внутри кнопки. Я хочу, чтобы текст отображался только в элементе списка, с которым я уже имею дело, а не во всем списке. Пожалуйста, помогите мне, как я могу это сделать.

import React from 'react';
import { connect } from 'react-redux';
import { fetchUser, selectPost } from '../actions';

class UserHeader extends React.Component {

  render() {

      return <button onClick={this.props.selectPost} className="header"> {this.props.select} </button>


  }
}


const mapStateToProps = (state, ownProps) => {
  return {
    select: state.select
   };
}

export default connect(mapStateToProps, { selectPost })(UserHeader);


//Reducer.js

export const Reducer_posts = (state=[], action) => {
  switch (action.type){
    case 'FETCH_POSTS':
      return action.payload
    default:
      return state;
  }

};

export const Reducer_users = (state=[], action) => {
  switch (action.type){
    case 'FETCH_USER':
      return [...state, action.payload];
    default:
      return state;
  }
};

export const Reducer_select = (state=[], action) => {
  switch (action.type){
    case 'SELECT_POST':
      return action.payload;
    default:
      return state;
  }
};



...