Mongodb 在数组中查找字符串

Mongodb 在数组中查找字符串,mongodb,mongoose,mongodb-query,Mongodb,Mongoose,Mongodb Query,我得到了一个文件“tags”,它有值[“tag1”,“tag2”,…] 我从req.body.tag中得到了一个名为“tag1”的标签 我想在标记[…]的位置查找标记。name=“tag1”如何查找 这就是我试过的 api.post('/findByTag', async(req, res) => { if(!req.body.tag || req.body.tag === 'string') return let tag = Array.from(req.body.

我得到了一个文件“tags”,它有值[“tag1”,“tag2”,…] 我从req.body.tag中得到了一个名为“tag1”的标签

我想在标记[…]的位置查找标记。name=“tag1”如何查找

这就是我试过的

  api.post('/findByTag', async(req, res) => {
    if(!req.body.tag || req.body.tag === 'string') return

    let tag = Array.from(req.body.tag)

    try {
      let memos = await Memo.find({})
      .where('tags')
      .in(tag)
      .limit(30)

      res.status(200).json({ data: memos })
    } catch(err) {
      logger.error(err.message, err)
      res.status(500).json({ message: err.message })
    }
  })

由于
标记
包含一个简单的字符串数组,因此可以用这种方式进行查询

api.post('/findByTag', async(req, res) => {
  if(!req.body.tag || req.body.tag === 'string') return

  let tag = Array.from(req.body.tag)

  try {
    let memos = await Memo.find({ tags: tag })
    .limit(30)

    res.status(200).json({ data: memos })
  } catch(err) {
    logger.error(err.message, err)
    res.status(500).json({ message: err.message })
  }
})

哦,谢谢!它起作用了!!