微信小程序全局变量globalData用法

微信小程序全局变量globalData用法,第1张

微信小程序全局变量globalData在app.js中

方法1【推荐】:通过app获取,需要在第一者蔽行声明app的实例 const app = getApp()

方法2: 直接通过getApp().globalData获取,不需要写const app = getApp()实睁禅例

方法3:首早州在app.js文件内使用

更新(修改)用法:推荐方法1

在开发项目过程中,有一些变量,是需要全局注册并且全局哪闷拿调用,微信小程序除了使用传统的本地化存储之李搭外,还能使用罩则什么方法进行存储呢,这里推荐使用在app.js里面定义一个globalData对象

一般是先修改json值再setData 比如:

page({

data:{

s1:{a:"",b:"b"}

},

changeData:function(e){

var cData=this.data.s1

cData.a="1"//先修改json值

this.setData({ //再set值

s1:cData

})

}

})

把AngularJS开发的页面迁移到微信小程序目录迁移

1、每个子模块页面换成Pages目录下的一个子目录,目录命名就是原子模块名。

2、原来的通用css、image、fonts等静态资源统一移到resource目录下,需要使用时,对于css样式文件,在对应子模块的wxss文件首部通过import命令引入;替换规则1、div需统一转换成View;2、ng-show统一转换为wx:if;

3、ng-click统一转换为bindtap;

4、ng-repeat统一用wx:for替换;

5、ng-class中的样式选择性绑定可以直接把条件绑定语句嵌入class属性;js代码模块级代码迁移:可将模块级作用域使用的通用逻辑搬到app.js中,通过app对象来引用;或者定义一个util模块,来做动态引入;对于原生与h5交互时用到的自定义事件,需要根据具体场景做处理。

子模块级代码迁移:可将Angular子模块代码直接迁移到小程序对应Page对象中,当然,对于Angular特定语法的$***对象(例如$scope、$rootscope)的 *** 作,需要做全局替换,替换原则是:

1、$scope:与Page对象同生命周期内的$scope,可以直接替换成this;而对于非同一生命周期的(最常见的即是各种callback回调函数),需要将Page对象在方法外做引用保存(例如varself=this),然后在回调函数中使用。

2、$rootScope:推荐放入app对象中引用,或者自定义通用模块,然后动态引入;

3、数据模型:各页面中建立的数据模型,直接放入***.json文件中,如果涉及Angular特定语法的 *** 作,可参考上述两点的做法进行替换;

4、jsonp请求:将jsonp请求统一替换成wx.request请求,只是原来的链式写法要换成参数型写法;

5、子模块间的页面跳转,$state.go统一替换成wx.navigateTo或wx.navigateBack。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12388329.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存