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

QQ登录

只需一步,快速开始

查看: 1575|回复: 4

[处理中3] 定义的两个变量一个在调用方法时报错,另一个正常

[复制链接]

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
发表于 2016-12-17 11:37:11 | 显示全部楼层 |阅读模式
定义在index页面
justep.Shell.userName = justep.Bind.observable();
justep.Shell.useToken = justep.Bind.observable();

  1. <br />
复制代码

使用在login页面
justep.Shell.userName.set(xhr.hr_userName);
justep.Shell.useToken.set(xhr.hr_token);
  1. <br />
复制代码

代码如上,userName调用set方法正常,但是useToken调用set方法就提示is not a function。我在这里用get方法也是同样的错误提示。这个错误还是不一直出现的,反复登陆的时候会频繁出现,但不是每次都出现。这种异常报错原因是什么呢,同样的定义同样的使用,我怎么排查也搞不清楚了
传说中路过

1

主题

1831

帖子

821

积分

高级会员

Rank: 4

积分
821
QQ
发表于 2016-12-17 20:34:39 | 显示全部楼层
你是想在index页面里面定义全局变量么?
回复 支持 反对

使用道具 举报

发表于 2016-12-19 10:47:32 | 显示全部楼层
有没有在其他地方覆盖这个变量的值呢??useToken
比如:justep.Shell.useToken  = '值'

这个变量必须是一个KO 对象,如果代码中有赋值常理,导致它不是KO 对象了,就会出现set get 方法为不存在!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
 楼主| 发表于 2016-12-23 15:54:54 | 显示全部楼层
大雁子 发表于 2016-12-17 20:34
你是想在index页面里面定义全局变量么?

是的,用justep.Shell.userName = justep.Bind.observable();这种方式来定义应该可以吧
传说中路过
回复 支持 反对

使用道具 举报

97

主题

580

帖子

1359

积分

金牌会员

Rank: 6Rank: 6

积分
1359
QQ
 楼主| 发表于 2016-12-23 16:32:43 | 显示全部楼层
liangyongfei 发表于 2016-12-19 10:47
有没有在其他地方覆盖这个变量的值呢??useToken
比如:justep.Shell.useToken  = '值'

我排查了一下,在别的页面上果然有直接赋值的情况出现。全改了确认无误我再来反馈一下
传说中路过
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-25 22:20 , Processed in 0.051650 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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