起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1498|回复: 2

[处理中3] 用户登录时,怎么使用全局可观察变量动态控制组件显示

[复制链接]

12

主题

34

帖子

164

积分

初级会员

Rank: 2

积分
164
QQ
发表于 2018-10-9 16:50:37 | 显示全部楼层 |阅读模式
实现逻辑如下:参考 http://docs.wex5.com/wex5-ui-question-list-2096/  的方法

首先定义了KO对象,        “window.userState = justep.Bind.observable();”
然后做了2个页面,一个是用户信息页面,一个是登录页面;
在用户信息页面有两个panel,分别用bind-bisible绑定window.userState 控制显示;用户登录后,会改window.userState 的值。


运行结果:
当进行用户登录后,使用 window.close history.back(),返回用户信息页,均无法控制panel的显示,但页面的window.userState 的值已经更改。

请问该如何解决这个问题?


1.png





2.png















发表于 2018-10-9 17:12:13 | 显示全部楼层
你是怎么修改值的??
需要用window.userState.set(1)

比较的地方应该写成window.userState.get() !=1

取值和赋值注意一下!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

12

主题

34

帖子

164

积分

初级会员

Rank: 2

积分
164
QQ
 楼主| 发表于 2018-10-10 09:57:40 | 显示全部楼层
之前是直接赋值 window.userState = 1,现在改为window.userState.set(1)问题解决了,谢谢~~~

再请教一下,这两种方式在处理有什么不同?
window.userState = 1,然后返回上级页面,bind-bisible没有立刻感知值的变化,需要刷新一下页面,才能控制显示
window.userState.set(1)直接返回上级页面,就会立刻感知变化,
两者的处理差别在哪?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-3 06:20 , Processed in 0.068848 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表