收藏
回答

使用setData渲染一个双重for的list的时候,用按钮点击可以成功渲染,onLoad却不行?

首先,是我要渲染的list,结构如下图:


接下来就是在debug中的代码


已知,我有两种访问方式,一种是,点击按钮渲染,另一种是直接从onLoad进去渲染。

然后都debug到这一步,特意对比了appData的数据,还有两个list的数据,都是一模一样。

随后点击到setData执行结束以后,点击按钮渲染的可以正常地把我想要的数据渲染出来,渲染的就是commodity中的rows,但是onLoad进去的,就渲染失败了,只给出两个空的架子,里面的rows渲染不到。

请问是怎么回事?求解决方法。


最后一次编辑于  2019-12-14
回答关注问题邀请回答
收藏

4 个回答

  • 马树菌
    马树菌
    2020-05-22

    遇到了相似的情况, 不过还是不太一样。

    onload中云数据库查询数据后setData然后视图层没有渲染但AppData已更新,探究了后发现问题是自己在视图层数据绑定的时候是直接用对象属性的方式的了,{{imageDetailObjetct.link}}, 然而setData时它是自动把对象数据转成数组数据的,所以应该是{{imageDetailObject[0].link}}才会正确渲染。

    2020-05-22
    有用 1
    回复 1
    • searchFan1
      searchFan1
      2020-05-22
      非常感谢
      2020-05-22
      回复
  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2019-12-14

    这种最好弄个能复现问题的代码片段,你的问题就很快解决了

    2019-12-14
    有用 1
    回复 22
    查看更多(17)
  • 1005
    1005
    2019-12-14

    建议先仔细看看多层数据遍历

    2019-12-14
    有用 1
    回复 2
  • 铭锋科技
    铭锋科技
    2019-12-14

    没代码等于白问,没数据可以造出来

    2019-12-14
    有用
    回复 2
    • searchFan1
      searchFan1
      2019-12-14
      我把渲染的代码给你看一下。。js的就太长了。。
      2019-12-14
      回复
    • searchFan1
      searchFan1
      2019-12-14
      我能保证,至少list拿到,而且两种方式的appData的数据都一样。。
      2019-12-14
      回复
登录 后发表内容
问题标签