收藏
回答

关于图片安全检测后图片显示的问题,如何不让图片先显示出来呢?

blog集合中有个checked字段默认是false,每条博客要求审核过后才能显示。图片检测后云函数imgCheckedResult的具体代码如下,运行时我发现问题图片可能会短时间显示一下在前端,最后刷新页面会不在,请问问题在哪里呀?

  // 根据trace_id将查询结果记入‘imgCheckResu’集合中
  res = await db.collection('imgCheckResu').where({
    trace_id
  }).update({
    data: {
      checkResult,
      label,
      openid
    }
  })


  //根据trace_id在‘imgCheckResu’集合中查询blogid和图片列表长度
  res2 = await db.collection('imgCheckResu').where({
    trace_id
  }).get()
  _id = res2.data[0].blogid;
  length = res2.data[0].length;


  //将每张图片的检测结果分别记入到‘blog’集合的checkedArr字段   
  res3 = await db.collection('blog').where({
    _id
  }).update({
    data: {
      checkedArr: _.push(checkResult)
    }
  })


  //查询checkedArr字段是否有risky
  res4 = await db.collection('blog')
    .aggregate()
    .match({
      _id
    })
    .project({
      included: $.in(['risky''$checkedArr'])
    })
    .end()
  const result1 = res4.list[0].included


  //查询checkedArr字段是否有review
  res5 = await db.collection('blog')
    .aggregate()
    .match({
      _id
    })
    .project({
      included: $.in(['review''$checkedArr'])
    })
    .end()
  const result2 = res4.list[0].included



  //如果没有risky和review结果,将blog的checked字段置为true,博客显示,否则依然是false不显示。  
  if ((!result1) && (!result2)) {
    return await db.collection('blog').doc(_id).update({
      data: {
        checked: true
      }
    })
  } else {
    return await db.collection('blog').doc(_id).remove()
  }
回答关注问题邀请回答
收藏

2 个回答

  • showms
    showms
    2024-12-09

    前端代码是怎么写的

    2024-12-09
    有用
    回复
  • 一笑皆春
    一笑皆春
    2024-12-07

    看看选取图片的地方,是不是选择完了图片将临时路径的图片展示出来了,所以短暂的显示

    2024-12-07
    有用
    回复 1
    • 管名豪
      管名豪
      发表于移动端
      2024-12-07
      不是的,是云存储里的地址,我感觉是多图中有几张正常的,会更改cherked的值导致的
      2024-12-07
      回复
登录 后发表内容