//index.js Page({ data: { text:"This is page data.", sliderOffset: 0, sliderLeft: 0, state:{ genre:[], genre_index: 0, model:[], model_index: 0, terminalStatus:'', } }, onLoad:function(options) { // Do some initialize when page load. }, onReady:function() { // Do something when page ready. }, onShow:function() { // Do something when page show. }, onHide:function() { // Do something when page hide. }, onUnload:function() { // Do something when page close. }, onPullDownRefresh:function() { // Do something when pull down. }, onReachBottom:function() { // Do something when page reach bottom. }, // Event handler. viewTap:function() { varp =this.position ball(p, 150) functionball(x, y) { console.log(x,y) } }, customData: { hi:'MINA' } })
1、设置data数据 setData 函数用于将数据从逻辑层发送到视图层,同时改变对应的this.data 的值。
注意:
(1)、直接修改this.data 无效,无法改变页面的状态,还会造成数据不一致。
(2)、单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。
setData() 参数格式:接受一个对象,以 key,value 的形式表示将this.data 中的 key 对应的值改变成 value。其中 key 可以非常灵活,以数据路径的形式给出,如 array[2].message,a.b.c.d,并且不需要在this.data 中预先定义。
下面设置data中的text和genre_index的值
this.setData({ 'state.genre_index':1, text:'data value' }) 2、获取data数据 获取data中的text和genre_index值需要使用this vargener_index=this.data.state.genre_index vartext=this.data.text 3、调用viewTap函数 在viewTap函数中调用内部的ball函数可以直接调用,如果需要在onReady函数中调用viewTap函数需要使用this。 onReady:function() { this.drawBall() },
|