Мне нужно отобразить список пользователей, и при нажатии кнопки я хочу отобразить текст внутри кнопки. 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;
}
};