Javascript 为什么axios没有';不从我的变量中删除元素吗?
我想删除待办事项列表中所有已完成的任务。 在代码中,我将所有已完成的任务分配给变量“completed”。接下来,我想使用axios从服务器上删除已完成的任务Javascript 为什么axios没有';不从我的变量中删除元素吗?,javascript,axios,Javascript,Axios,我想删除待办事项列表中所有已完成的任务。 在代码中,我将所有已完成的任务分配给变量“completed”。接下来,我想使用axios从服务器上删除已完成的任务 removeItems = (event) => { event.preventDefault(); let completed = []; this.setState(prevState => { return { todos: prevState.todos.
removeItems = (event) => {
event.preventDefault();
let completed = [];
this.setState(prevState => {
return {
todos: prevState.todos.filter(todo => {
if (todo.completed == true) {
completed.push(todo)
}
return !todo.completed;
})
}
})
console.log(completed);
const remove = completed.map(async (todo) => {
await Axios.delete(`http://localhost:8000/todoes_destroy/{id}/`)
})
}
我更改了代码,现在它可以工作了。这就是解决办法
removeItems = async (event) => {
event.preventDefault();
const completed = this.state.todos.filter(todo => {
return todo.completed
});
const remove = completed.map( async (todo) => {
console.log(todo);
await Axios.delete(`http://localhost:8000/todoes_destroy/${todo.id}/`)
}
)
const {data} = await Axios.get('http://127.0.0.1:8000/todoes_read/', {
})
this.setState({todos : data})
}
我更改了代码,现在它可以工作了。这就是解决办法
removeItems = async (event) => {
event.preventDefault();
const completed = this.state.todos.filter(todo => {
return todo.completed
});
const remove = completed.map( async (todo) => {
console.log(todo);
await Axios.delete(`http://localhost:8000/todoes_destroy/${todo.id}/`)
}
)
const {data} = await Axios.get('http://127.0.0.1:8000/todoes_read/', {
})
this.setState({todos : data})
}
看起来您的url没有正确插入。你错过了{id}之前的$。等待Axios。删除(
http://localhost:8000/todoes_destroy/${id}
)谢谢,我在{id}之前添加了$。但是现在我可以看到消息“'id'未定义no undef”:/I将${id}更改为${todo.id},因此没有错误消息“'id'未定义no undef”。但它仍然不起作用。你看过服务器端了吗?是否记录了任何内容?看起来您的url没有正确插入。你错过了{id}之前的$。等待Axios。删除(http://localhost:8000/todoes_destroy/${id}
)谢谢,我在{id}之前添加了$。但是现在我可以看到消息“'id'未定义no undef”:/I将${id}更改为${todo.id},因此没有错误消息“'id'未定义no undef”。但它仍然不起作用。你看过服务器端了吗?有什么记录吗?