收藏
回答

将云存储fileid传入数据库中,setData无效怎么办呢?(救救孩子)

回答关注问题邀请回答
收藏

8 个回答

  • i
W
    i W
    2021-03-10

    异步问题 async 、 await

    2021-03-10
    有用 2
    回复 1
    • 少年
      少年
      发表于移动端
      2021-03-10
      我试试异步,谢谢你!
      2021-03-10
      回复
  • 少年
    少年
    2021-03-10

    调了好久,算是搞定了。谢谢各位大佬的指点!孩子感激涕零!

    最终确实是异步问题,得用async、await。

    我的实现是:先将图片上传至云存储,再获取云存储的fileid传入云数据库中,但是由于异步处理问题,数据库的add反而先执行了,而此时img还是为空。

    解决方法就是:把上传页面数据的函数写到了云存储的success里面并加上await,即等图片全都上传完了再加入数据库中。

    2021-03-10
    有用
    回复
  • dreamhunter
    dreamhunter
    2021-03-10

    建议打印下img_url_ok,感觉问题出在这里

    2021-03-10
    有用
    回复
  • less
    less
    2021-03-10

    你这个代码好像只能一次上传一张吧

    2021-03-10
    有用
    回复
  • 陈宇明
    陈宇明
    2021-03-10
    1. 位置应该放在回调success里面
    2. 你的img_url_ok从哪里来的?我并没有从你贴的代码块中看到这个变量的定义
    2021-03-10
    有用
    回复 3
    • 少年
      少年
      发表于移动端
      2021-03-10
      那个变量我定义成全局的了 我放到success里面还是不行 感觉是异步问题了
      2021-03-10
      回复
    • 陈宇明
      陈宇明
      2021-03-10回复少年
      是什么不行?你要达到什么目的?
      2021-03-10
      回复
    • 少年
      少年
      发表于移动端
      2021-03-10回复陈宇明
      img_url_ok这个值传递不到页面data中,我需要将页面data值传到数据库中(如果我不用云存储的fileid是可以实现的)
      2021-03-10
      回复
  • 拾忆
    拾忆
    2021-03-10

    异步 应该把setData 放到success 中去 ,当i == img_url.length时执行

    2021-03-10
    有用
    回复 1
    • 少年
      少年
      发表于移动端
      2021-03-10
      我试试,谢谢你!
      2021-03-10
      回复
  • 青寒
    青寒
    2021-03-10

    孩子,是你自己放错位置了。

    2021-03-10
    有用
    回复 1
    • 少年
      少年
      发表于移动端
      2021-03-10
      我之前放success里面的,但还是不行哎
      2021-03-10
      回复
  • 跨商通
    跨商通
    2021-03-10

    setData写在success里。

    2021-03-10
    有用
    回复 1
    • 少年
      少年
      发表于移动端
      2021-03-10
      我之前是放在success里面的,但还不行
      2021-03-10
      回复
登录 后发表内容
问题标签