收藏
回答

微信小程序返回的数据和页面渲染不一致?跟this.setData没关系!

一直做的后端,这段时间一个朋友喊我一起自己搞小程序,摸着石子过河,也算摸得七七八八,但是目前遇到这个问题,是真的莫名其妙。描述如下,还望各位大佬不吝赐教,在下感激不尽:

在我设置input数字的时候,一切都是正常的,包括后面单位的选择也没有问题。

比如我刚进来,目前所见是我设置了所有的数量,默认是“0”,这是设置后的结果。单位默认为“箱”。

当我在搜索框输入过滤条件,比如“果”,回车,一切结果也正常。

当我点击取消后,相当于重新查询结果。问题出来了,单位没问题!数量只有当前过滤的两个产品是对的,别的全部变成“0”。并且我打印出来的结果数量都是对的,但就是渲染出来不对。这个打印结果是下面这段代码中打印的结果,只是我为了展示代码,把console.log 删掉了,希望有大神能替我指点一二。

我只能怀疑是不是组件本身的问题,我相信如果数量的功能自己做,不套用组件肯定不会有什么。但是既然问题遇到了,我还是想搞明白,为什么结果和渲染会出现这种情况。

页面代码:

js代码:

改变数量代码:

模糊查询代码:

最后一次编辑于  2023-02-19
回答关注问题邀请回答
收藏

3 个回答

  • 大山
    大山
    2023-02-19

    先不说显不显示的问题。

    错误一:setData不要重复调用,会耗时等,只在 for 循环体下面调用一次即可。合理使用setData说明文档

    错误二:搜索赋值 e.detail.value;

    错误三:搜索不应该是请求后端数据,返回渲染 setData 重新渲染吗,怎么在 js 搜索那。如果有分页数据,怎么去实现。

    2023-02-19
    有用 2
    回复 3
    • 未妨惆怅是清狂、
      未妨惆怅是清狂、
      2023-02-19
      静态数据  后端还没开始开发
      2023-02-19
      回复
    • 未妨惆怅是清狂、
      未妨惆怅是清狂、
      2023-02-19
      感谢哈 搜索这个没注意看
      2023-02-19
      回复
    • 未妨惆怅是清狂、
      未妨惆怅是清狂、
      2023-02-19
      你说的错误三是因为需要修改,然后批量更新数据,这个问题我后期会考虑具体怎么实现。搜索的目的是为了找到客户需要的产品,很有大部分产品都需要通过搜索查询来修改。我要做的是以最简单的方式让客户做到最好的体验,从后台查询再修改不太符合现在的需求。
      2023-02-19
      回复
  • 未妨惆怅是清狂、
    未妨惆怅是清狂、
    2023-03-04
    解决方式   
    <wux-input-number data-index="{{index}}" bind:change="numberChange" longpress default-value="{{item.num}}" disabled="{{ false }}" min="{{0}}" slot="footer" />
    加了个
    default-value="{{item.num}}"
    


    2023-03-04
    有用
    回复
  • Jianbo
    Jianbo
    发表于小程序端
    2023-02-19

    如果你的表述都没问题,应该是这个组件的显示问题,对数字型变量的处理出了问题。

    2023-02-19
    有用
    回复 1
登录 后发表内容