0

我正在使用 json-server 并构建一个假的 JSON 服务器来使用 react-redux 应用程序。我正在研究删除方法。这里是动作

//Delete Employee
export const deleteEmployee = employeeId => dispatch => {
  axios
    .delete(`http://localhost:3004/employees?employeeId=${employeeId}`, {
      headers: {
        "Content-Type": "application/json"
      }
    })
    .then(
      dispatch({
        type: DELETE_EMPLOYEE,
        payload: employeeId
      })
    )
    .catch(err => console.log(err));
};

这是 db.json

[{
  "name": "Joshua Fluke",
  "title": "Designer",
  "funFact": "This is my test app to test the delete functionality of the app",
  "image": "http://placeholder.pics/svg/300x200/333333",
  "employeeId": "12341234",
  "dateOfJoining": "12/10/2016",
  "id": 7
}]

这是我的删除减速器

case DELETE_EMPLOYEE:
  return {
    ...state,
    employees: state.employees.filter(
      employee => employee.employeeId !== action.payload
    ),
    loading: false
  };

因此,当我单击删除按钮时,删除在视觉上工作正常,它会删除 html,但不会从 db.json 中删除条目。如何删除 json-server 的 db.json 中的条目。

4

1 回答 1

1

Axios 可能对查询参数很敏感。如果您可以联系到您的控制器,则应按如下方式发送请求:

axios
.delete(`http://localhost:3004/employees`, {
  headers: {
    "Content-Type": "application/json"
  },
  params: {
    employeeId: employeeId
  }
})
.then(
  dispatch({
    type: DELETE_EMPLOYEE,
    payload: employeeId
  })
)
.catch(err => console.log(err));
于 2018-06-11T03:05:17.190 回答