勾选checkbox后,调用生命周期函数刷新,不会清空checkbox已勾选状态

发布于 6 年前作者 daimin4995 次浏览最后编辑 6 年前来自 ask
  • 当前 Bug 的表现(可附上截图)

打开页面,默认是未选择状态,此时正确

勾选毕业证CheckBox 并且点击确定

点击确认按钮后,我会调用生命周期函数将页面刷新(为了测试同时调用了onLoad和onShow),可以看到此时控制带的CheckBox value=2 此前是Vaule=1 证明页面已经刷新了的,但是 上一次勾选的checkbox 状态checked 并没有刷新 而是被用在了下一个CheckBox中,即状态没有被重置

请问这个问题怎么解决??

  • 预期表现

CheckBox 默认是未选择状态

  • 复现路径

  • 提供一个最简复现 Demo

4 回复
xiuying06
xiuying061 楼6 年前
ming68
ming682 楼6 年前

楼主你的这个问题 最后怎么解决的

leixia
leixia3 楼6 年前

不是调用生命周期函数就会刷新的呀,你需要自己维护状态,操作完成把状态重置

oxia
oxia4 楼4 年前

onShow没有刷新页面,页面当前的一些data都还在,checkbox的data没有更新,记录了上次选中的checkbox的index

简单的做法就是直接加一个开关,在点击按钮之后先将checkbox-group去掉再加上,等于是重新渲染checkbox-group