收藏
回答

为什么用setData更改数据后有时候打印的是空对象




如图所示 我用setData赋值后 可以在onready里用this.data打印出来 可以看到赋值成功 但是不能打印this.data.exchanList  大多数会出现空对象 如最后一张图片最后一行 里面什么也没有  但是有时候打印又能出数据

最后一次编辑于  2018-12-14  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
    蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
    2018-12-14

    这有个先后顺序,因为请求时间的不固定的,有可能你获取到数据的时候,页面已经渲染完成了,这个时候数据还没有set过来

    2018-12-14
    赞同 1
    回复 6
    • M   '
      M '
      2018-12-14

      感觉你说的很对 那这个问题我应该怎么解决 因为还有好多数据 现在开始频繁出现这个问题 后面获得的数据都是这样.

      2018-12-14
      回复
    • 蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      2018-12-14回复M '

      你没必要在onready里面去操作数据,你可以在onload的回调函数里面去操作数据,也可以在回调函数中调用自定义事件来处理数据。如果你要使用onready的话你得清楚生命周期的流程,以及自己的项目实际需求是什么样子的,如果你非要在onready里面去操作数据,你何不把请求函数写在onready里面是操作

      2018-12-14
      回复
    • M   '
      M '
      2018-12-14回复蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名

      我在onready里主要是打印看看  主要是直接在页面掉数据 可以掉也可以用 但是又个最新问题 我在发送个ajax获取到数据a  然后这个a是另一个ajax url的组成部分. 所以必须调用a  才能执行下个ajax 但是由于这个a经常会没有数据 所以我的下一个ajax也没办法执行






      这是获取的数据  第一个ajax  


      这是我要用它的值来动态url获取后台数据  但是如果它经常会不显示 没办法打点调用啊. 求大神指导


      2018-12-14
      回复
    • 蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      2018-12-14回复M '

      你在获取了数据后再执行下一个ajax啊,当成同步事件使用

      2018-12-14
      回复
    • M   '
      M '
      2018-12-14

      我就是这样写的啊  ajax是按顺序发送的..   不知道能在ajax里继续发送ajax吗

      2018-12-14
      回复
    查看更多(1)
  • M   '
    M '
    2018-12-14

    我在onready里主要是打印看看  主要是直接在页面掉数据 可以掉也可以用 但是又个最新问题 我在发送个ajax获取到数据a  然后这个a是另一个ajax url的组成部分. 所以必须调用a  才能执行下个ajax 但是由于这个a经常会没有数据 所以我的下一个ajax也没办法执行






    这是获取的数据  第一个ajax  


    这是我要用它的值来动态url获取后台数据  但是如果它经常会不显示 没办法打点调用啊. 求大神指导

    2018-12-14
    赞同
    回复 4
    • 蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      2018-12-19

      不好意思 ,周末放假,然后又请了两天假,现在才看到。

      ajax请求是可以嵌套的,

      就像这个,在onload里面请求 成功后再调用second,second成功返回后再调用three。这样写就可以保证1里面获取的数据可以给到2和3,2请求的数据可以给到3,就不会出现获取不到数据的情况了

      2018-12-19
      回复
    • M   '
      M '
      2018-12-19回复蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名

      好的 谢谢 我最后也是嵌套解决的  第一次做小程序 十分感谢大神指导

      2018-12-19
      回复
    • 蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名
      2018-12-19回复M '

      之前有事没上班,抱歉没及时帮到你

      2018-12-19
      回复
    • M   '
      M '
      2018-12-19回复蹦叉叉蹦叉叉蹦叉叉蹦叉叉蹦叉叉名

      没事 其实已经帮了很多 以后有机会在和大神交流

      2018-12-19
      回复