NodeJS 如何从节点js中删除对象数组

w9apscun  于 2022-12-03  发布在  Node.js
关注(0)|答案(1)|浏览(194)

我正在使用react js和node js创建一个简单的todolist,没有数据库(将数据存储在objact数组中)。我需要通过单击逐个删除元素。对于每个元素,我有Delete button。现在从前端删除todolist(react),如何从任何一个节点删除它,请帮助我
todo.js

function Remove(id) {
  const updateTodos=[...tasks].filter((obj)=>obj.id!==id)
  setTasks(updateTodos)
  
 } 

 if(isLogged){
  
  return (
  
      <div >
        <h1>ToDo List</h1>
        <form onSubmit={HandleSubmit}>
        <input type="text" placeholder=" Add item..." name="list" value={toDos} onChange={(e)=>setToDos(e.target.value)}/>
        <button id="btn" type="submit">Add</button>
       
        
        </form>
        <ul>
          {tasks.map(obj=><li key={obj.id}>{obj.toDo}<button type='delete' onClick={(e)=>Remove(obj.id)} >Delete</button>
          <input type="checkbox" id="" name=""onChange={(e)=>{
            console.log(e.target.checked)
            console.log(obj)
            setTasks(tasks.filter(obj2=>{
              if(obj2.id===obj.id){
                obj2.status=e.target.checked
              }
              return obj2
            }))
          }} value={obj.status}  /> </li>)}
        </ul>

        <h4>Completed tasks</h4>
        {tasks.map((obj)=>{
          if(obj.status){
            return(<h5>{obj.toDos}</h5>)
          }
          return null
        })}

      </div>

  );
  }

}

export default Todo;

节点- index.js

const lists =[
    {id: new Date(),toDo:"learn react"}
]
app.post('/Todo',function(req, res){

            lists.push({"id":new Date(),"toDo":req.body.list,"status":false})
    console.log(lists)
    res.status(200).json(lists[lists.length-1])
 })

 app.get('/Todo', (request, response) => response.status(200).json(lists));
js81xvg6

js81xvg61#

req.body.list.pop()
res.status(200).json({"id":new Date(),"toDo":req.body.list,"status":false})

这将删除列表中的最后一个元素

相关问题