Как удалить ios с помощью mockAPI в redux и объединить промежуточное ПО? - PullRequest
0 голосов
/ 29 мая 2020

это редукторы файлов. js

...
swicth(action.type){
  case "DELETE_TODO_STARTED":    
      return {
        loading: false,
        todos : state.todos
      };
    case "DELETE_TODO_SUCCESS":
      const todoList = state
      todoList.splice(parseInt(action.data.id),1)
      return {
        loading: false,
        todos : [...todoList] 
        // i think error this code
      };
    case "DELETE_TODO_FAILURE":
      return {
        loading: false,
      };
    default:
      return {
        todos: [],
      };
}
...

это файловое действие. js

...
export const deleteData = (index) => {
  return (dispatch) => {
    dispatch(deleteDataStarted());
    axios
    .delete(`https://5ec912d99ccbaf0016aa8b6f.mockapi.io/list/${index}`)
    .then(res => {
       dispatch(deleteDataSuccess(res.data))
    })
    .catch(err => {
        dispatch(deleteDataFail(err))
    })
  }
}
 export const deleteDataStarted = () => ({
    type: "DELETE_TODO_STARTED",
  });
  export const deleteDataSuccess = (data) => ({
      type: "DELETE_TODO_SUCCESS",
      data,
    });
  export const deleteDataFail = (err) => ({
    type: "DELETE_TODO_FAILURE",
    err,
  });
...

это элемент файла. js

....
    const { todoName, stt} = this.props;
    return (
      <tr>
        <th scope="row">{stt + 1}</th>
        <td>{todoName}</td>
        <td>
          <button
            onClick={() =>this.props.deleteData(stt)}
            type="button"
            class="btn btn-danger mr-2"
          >
            <i class="fa fa-window-close"></i>
          </button>

        </td>
      </tr>
    );
...

const mapDispatchToProps = (dispatch) =>{
  return {
    deleteData : (index) => {dispatch(deleteData(index))}
  }
}
export default connect(null,mapDispatchToProps)(Item)

это список файлов

...
       <tbody>
          {this.props.todoList.map((todo, index) => (
            <Item key={index} todoName={todo.name} stt={index} />
          ))}
        </tbody>
...

Я хочу, чтобы данные обновились и диаплей на экране после удаления события. Но при нажатии кнопки события появляется сообщение: Невозможно прочитать свойство «карта» неопределенного значения. Я пытаюсь вывести индекс элемента, который я удалил, все в порядке. пожалуйста, помогите мне !!!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...