靖墨如霖
靖墨如霖
  • 发布:2019-01-21 12:11
  • 更新:2019-01-21 12:15
  • 阅读:2234

【报Bug】HBuilderX 升级1.5.1后编译微信小程序global 变量用法问题,直接使用变量报错

分类:uni-app

1.5.1 版本 编译微信小程序global 变量,直接使用变量名会报错,说是找不到这个变量,底版本,1.3.2 不会。

[内容]
eg; 在入口声明与赋值 global.test = 123
在index页使用 console.log(test) 1.5.1 版本会报错,表示找不到test,底版本会正常输出123.
问题是,global 声明的变量 正确的用法是test ?还是global.test ? 还是这次升级后带来bug ?

重现步骤
[步骤]
1、在微信小程序onLaunch处加
console.log('App Launch')
global.test = 123;
2、在index 页 onLoad 处加
console.log('global.test =', global.test);
console.log('test =', test);
[结果]
在1.3.2 版本 console.log里 两种写法都能正常打印输出 123
在1.5.1版本 console.log里 global.test 能正常输出 123 ,test 的写法报错,表示找不到。

下面是报错部分内容
thirdScriptError
test is not defined;at pages/index/index page lifeCycleMethod onLoad function
ReferenceError: test is not defined
at Vue$3.onLoad (http://127.0.0.1:64894/appservice/pages/index/index.js:310:33)
at callHook$1 (http://127.0.0.1:64894/appservice/common/v

[期望]
1、麻烦请回答下
global 声明的变量 正确的用法是test ?还是global.test ? 还是这次升级后带来bug ?

IDE运行环境说明
HBuilderX
[IDE版本号]
windows版本号 1.5.1 与1.3.2

联系方式
[QQ] 347900574@qq.com

2019-01-21 12:11 负责人:无 分享
已邀请:
Neil_HL

Neil_HL

  • 靖墨如霖 (作者)

    好的,谢谢赐教。关于设置全局变量的之前有看过这篇文章,用法也知道,只是感觉使用起来不方便,要多写几个字母。eg: 01、xx.obj.init() 02、this.obj.init() ,全局后 期望是 obj.init()。没有这种方式的话,我按文档来吧。

    2019-01-21 14:34

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