如何在NodeJS和React中创建喜欢的系统?

时间:2019-06-27 04:47:51

标签: node.js express mern

我创建了一个“秘密”项目,用户可以喜欢/不喜欢每个秘密。问题在于,每次用户触发“赞”按钮时,它都应该递增。由于某些原因,它不起作用!。

我以为错误是路线背后的逻辑,因为我确定其他一切都正确。如果你们认为我需要解释/粘贴更多代码,请告诉我。

我也已经尝试过这样做,但是也没有用:

router.put('/like/:id', async (req, res) => {
  try {
    const secret = await Secret.findById(req.params.id);

    const maxLikes = 999999999;

    for (secret.likes = 0; secret.likes < maxLikes; secret.likes++) {
      await secret.save();
      res.json(secret.likes);
    }
  } catch (err) {
    console.error(err.message);
    res.status(500).send('Server error');
  }
});

这是我当前的代码(已更新

// @route       PUT api/secrets/like/:id
// @description Like a secret
// @access      Public
router.put('/like/:id', async (req, res) => {
  try {
    const secret = await Secret.findById(req.params.id);

    // while (secret.likes <= 0) {
    //   secret.likes++;
    // }

    secret.likes.push(1);

    await secret.save();
    res.json(secret.likes);
  } catch (err) {
    console.error(err.message);
    res.status(500).send('Server error');
  }
});

当前的行为是它只允许一个赞,一旦达到1,就不再增加。希望我能很好地解释自己,谢谢。

注意:我也在使用ExpressJS。

0 个答案:

没有答案