3***@qq.com
3***@qq.com
  • 发布:2018-11-16 18:24
  • 更新:2018-11-19 17:59
  • 阅读:1318

【已解决】【报Bug】动态渲染不更新问题

分类:uni-app

详细问题描述(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)
[内容]
在安卓真机调试中,使用vuex保存的登录状态hasLogin,在动态渲染时页面并不会更新。

重现步骤
[步骤]
1、使用官方的login模板创建一个uniapp项目。
2、复制main.vue,取不一样的页面名字problem.vue。
3、在pages.json增加一个tab,path为problem.vue。
4、运行到安卓真机调试,并用微信登录进行登录与登出操作。
[结果]
首页会显示登录与登出状态。但是problem.vue页面的登录状态不会更改。
[期望]
problem.vue应该表现与首页一样,及时更新登录与登出状态。

[如果语言难以表述清晰,可以拍一个视频或截图,有图有真相]

IDE运行环境说明
[HBuilderX] 1.1.0.20181030
[windows版本号] Win10 教育版

App运行环境说明
[Android版本号] 7.1.1
[手机型号] 小米max2

附件
test-vuejs_未动任何地方.zip内含:
项目文件。

联系方式
[QQ] 30707772

2018-11-16 18:24 负责人:无 分享
已邀请:
3***@qq.com

3***@qq.com (作者)

问题似乎出在vuex上,深层次不太了解。但是有一个技巧(tricky),就是为了让页面能够感知vuex的变化并刷新,可以在页面上放置一个隐藏的local data(如val),然后在onload的时候setInterval,让val定时更新值(比如this.val=Math.random())。这样,当this.val变化的时候,显示val的view会刷新(虽然这个值是隐藏的,但它似乎也会刷新),同时带动整个页面的刷新。
但是这样做,真的是太奇怪的一件事。

希望官方能给一个答复,是本身设计成这样的?还是确实有渲染的问题?最佳的方式是什么?谢谢!

3***@qq.com

3***@qq.com (作者)

经与DCloud人员测试,该问题在编译器HBuilderX 1.2.0已经修复:

  • 修复 复杂场景下组件数据渲染异常的问题

使用最新的编译器,确认该问题不会出现。

该问题目前已经被锁定, 无法添加新回复