Как отправить действие в React-Redux

Я создал список пользователей с помощью действия getUsers () и теперь хочу удалить любого пользователя. поэтому я создал действие:

export function deleteUser(id) {
  return {
    type: DELETE_USER,
    payload: id
  };
}

настроить редуктор:

case DELETE_USER :
        return {
          ...state, 
          users: state.users.filter(i => i.id !== action.id)
        }

initialState это:

const initialState = {
    users: [
      {
        id: 1, 
        name: 'Oksana'
      },
      {
        id: 2, 
        name: 'Serge'
      },

    ],
    loading: true
}

и теперь пора отправить deleteUser ()

это мой компонент "Пользователи":

const mapStateToProps = (state) => ({ users: state.users });
const mapDispatchToProps = (dispatch) => {
  return {
    deleteUser: id => {
      dispatch(deleteUser(id))
    }
  }
     
};


const Users = (props) => {
  const { users } = props.users;
  console.info(props);

  useEffect(() => {
    getUsers();
  }, []);

  return (
    <>
      <h2>Users</h2>
      {users.map((user) => {
        return (
          <div className = "d-flex justify-content-between align-items-center mb-1">
            <li>{user.name}</li>
            <button onClick = {() => props.deleteUser(user.id)}>x</button>
          </div>
        );
      })}
    </>
  );
};


export default connect(mapStateToProps, mapDispatchToProps)(Users);

Я пытался переписать mapDispatchToProps, но это не работает. Я нажимаю кнопку удаления (x), и она ведет себя тупо. нет ошибок на терминале.

Вы должны написать action.payload, то есть users: state.users.filter(i => i.id !== action.payload)

Ajeet Shah 30.03.2021 18:31

верный ! Благодарность !:)

Xena 30.03.2021 18:52
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
2
27
0

Другие вопросы по теме