Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在delete操作中,api总是为提供的任何用户名或密码删除最后一个json对象?_Node.js_Reactjs - Fatal编程技术网

Node.js 在delete操作中,api总是为提供的任何用户名或密码删除最后一个json对象?

Node.js 在delete操作中,api总是为提供的任何用户名或密码删除最后一个json对象?,node.js,reactjs,Node.js,Reactjs,每当我在postman中检查delete操作时,它总是删除数组的最后一个元素。我想删除一个特定的元素 代码: 发件人: indexOf()使用 (与==或三重相等使用的方法相同 操作员) 由于您使用的是对象数组,因此无法找到确切的对象,因为您正在创建一个新的对象,indexOf将始终返回-1 当在拼接中使用负索引时,它将从最后一个元素中删除 您应该改为使用,这样您可以比较对象属性并找到索引 app.post('/delete-user', (req, res) => { const

每当我在postman中检查delete操作时,它总是删除数组的最后一个元素。我想删除一个特定的元素

代码:

发件人:

indexOf()
使用 (与
==
或三重相等使用的方法相同 操作员)

由于您使用的是对象数组,因此无法找到确切的对象,因为您正在创建一个新的对象,
indexOf
将始终返回
-1

当在
拼接
中使用负索引时,它将从最后一个元素中删除

您应该改为使用,这样您可以比较对象属性并找到索引

app.post('/delete-user', (req, res) => {
    const index = users.findIndex(u => u.username === req.body.username && u.password === req.body.password)
    if (index === -1) {
        res.status(404).send('Not Found')
        return
    }
    users.splice(index, 1)
    res.send(users)
})
发件人:

indexOf()
使用 (与
==
或三重相等使用的方法相同 操作员)

由于您使用的是对象数组,因此无法找到确切的对象,因为您正在创建一个新的对象,
indexOf
将始终返回
-1

当在
拼接
中使用负索引时,它将从最后一个元素中删除

您应该改为使用,这样您可以比较对象属性并找到索引

app.post('/delete-user', (req, res) => {
    const index = users.findIndex(u => u.username === req.body.username && u.password === req.body.password)
    if (index === -1) {
        res.status(404).send('Not Found')
        return
    }
    users.splice(index, 1)
    res.send(users)
})

可以只使用splice()方法,还是对splice()本身的代码进行一些更改。我想您也可以使用,但您需要将结果分配给
用户
变量,因为
.filter
不会更改原始列表可以使用splice()完成吗方法,或者对splice()本身的代码进行一些更改。我想您也可以使用,但需要将结果分配给
用户
变量,因为
.filter
不会更改原始列表