Я пишу CRUD-приложение React Redux с Node.js API.Я борюсь с DELETE part.Я получаю сообщение об успешном удалении, но в моей базе данных ничего не изменилось. Успешное сообщение в консоли
Мне просто интересно, почему оно не удаляет какие-либо данные?
user.reducer:
import { userConstants } from '../_constants';
export function users(state = {}, action) {
switch (action.type) {
case userConstants.GETALL_REQUEST:
return {
loading: true
};
case userConstants.GETALL_SUCCESS:
return {
items: action.users
};
case userConstants.GETALL_FAILURE:
return {
error: action.error
};
case userConstants.DELETE_REQUEST:
// add 'deleting:true' property to user being deleted
return {
...state,
items: state.items.map(user =>
user.id === action.id
? { ...user, deleting: true }
: user
)
};
case userConstants.DELETE_SUCCESS:
// remove deleted user from state
return {
items: state.items.filter(user => user.id !== action.id)
};
case userConstants.DELETE_FAILURE:
// remove 'deleting:true' property and add 'deleteError:[error]' property to user
return {
...state,
items: state.items.map(user => {
if (user.id === action.id) {
// make copy of user without 'deleting:true' property
const { deleting, ...userCopy } = user;
// return copy of user with 'deleteError:[error]' property
return { ...userCopy, deleteError: action.error };
}
return user;
})
};
default:
return state
}
}
user_actions:
export const userService =
{
delete: _delete,
};
function _delete(id) {
const requestOptions = {
method: 'DELETE',
// headers: authHeader(),
};
return fetch(`/removeadmin/${id}` , requestOptions).then(handleResponse);
}
Компонент AdminListPage:
delete(){
this.props.dispatch(userActions.delete(this.state.delete_user._id));
}
Кроме того, на стороне сервера я получаю статус успешного удаления
ServerSide Console (200)
Server_Side router:
app.delete('/removeadmin/:id', function(req, res)
{
var sent_url = url.parse(req.url, true),
qdata = sent_url.query,
sent_id = qdata.id;
console.log('id ' + sent_id);
admin.removeadmin(sent_id, function(err, user) {
if (err)
throw err;
});
Функция удаления Server_Side:
module.exports.removeadmin = function(id, callback){
var query = { _id: id };
Admin.remove(query, callback);
};
Я удалил пользователя с помощью простой команды извлечения в компоненте без избыточности, и я отправил идентификатор в теле запроса на удаление, и он работал, но с избыточным числом только успешное сообщение.
Спасибо за любую помощь