Я хочу предупредить об удалении файла в nodejs

router.delete('/:id',(req,res)=>{

Post.findOne({_id:req.params.id}).then(post=>{

    fs.unlink(uploadDir + post.file,(err)=>{

        post.remove();
        res.redirect('/admin/posts?resp=deleted');
    });



});

});

Как отразить изменения в пользовательском интерфейсе после удаления сообщения

какой шаблонизатор вы используете для пользовательского интерфейса?

Yogesh.Kathayat 10.08.2018 14:50
0
1
30
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если ваш экспресс-сервер перенаправляет страницу со строкой запроса url, заданной с помощью

?resp=deleted

на клиентской странице, когда страница загружается, вам нужно проверить, загрузилась ли страница с этим запросом href местоположения. Если это так, вы показываете пользователю сообщение.

Вот пример кода для проверки вашего клиента, когда страница загружается в браузере ... если запрос содержит удаленный ответ, который ранее был размещен в Stackoverflow ... но вот он

var search = location.search.substring(1);
var responseObj = JSON.parse('{"' + decodeURI(search).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g,'":"') + '"}')
if(responseObj.resp === 'deleted'){alert('It was deleted!')}

Сэр, он работает нормально, но если я хочу сделать это с помощью обратного вызова, то как я могу это сделать.

shankar singh rajput 10.08.2018 19:43

Я думаю, это зависит от того, что вы подразумеваете под словом «обратный вызов» .... Если вы спрашиваете, как можно делать разные предупреждения в зависимости от каждого ответа на запрос?

jremi 10.08.2018 19:44

Да, для каждого ответа, как это будет работать ... а также, пожалуйста, уточните эту строку также var responseObj = JSON.parse ('{"' + decodeURI (search) .replace (/" / g, '\\ "') replace. (/ & / g, '","'). replace (/ = / g, '":"') + '"}')

shankar singh rajput 11.08.2018 07:46

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