微信小程序 详解Page中data数据操作和函数调用


Posted in Javascript onJanuary 12, 2017

微信小程序 详解Page中data数据操作和函数调用

Page() 函数用来注册一个页面。接受一个 object 参数,其指定页面的初始数据、生命周期函数、事件处理函数等。

//index.js 
<pre code_snippet_id="2049407" snippet_file_name="blog_20161214_1_1145312" name="code" class="javascript">Page({ 
 data: { 
  text: "This is page data.",</pre><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_2_861121" name="code" class="javascript">  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 () { 
  var p = this.position 
  ball(p, 150) 
  function ball(x, y) { 
   console.log(x,y) 
  } 
 }, 
 customData: { 
  hi: 'MINA' 
 } 
})</pre><br> 
<p></p> 
<pre></pre> 
<br> 
1、设置data数据 
<p></p> 
<p><span style="font-size:14px">setData 函数用于将数据从逻辑层发送到视图层,同时改变对应的 this.data 的值。<br> 
注意:<br> 
(1)、直接修改 this.data 无效,无法改变页面的状态,还会造成数据不一致。<br> 
(2)、单次设置的数据不能超过1024kB,请尽量避免一次设置过多的数据。<br> 
</span></p> 
<p><span style="font-size:14px">setData() 参数格式:接受一个对象,以 key,value 的形式表示将 this.data 中的 key 对应的值改变成 value。其中 key 可以非常灵活,以数据路径的形式给出,如 array[2].message,a.b.c.d,并且不需要在 this.data 中预先定义。<br> 
</span></p> 
<p><span style="font-size:14px">下面设置data中的text和genre_index的值</span></p> 
<p><span style="font-size:14px"></span></p><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_3_1831450" name="code" class="html">this.setData({ 
   'state.genre_index':1, 
   text:'data value' 
})</pre><p></p> 
<p>2、获取data数据</p> 
<p>获取data中的text和genre_index值需要使用this</p> 
<p></p><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_4_5833420" name="code" class="javascript"><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_4_5833420" name="code" class="javascript">var gener_index=this.data.state.genre_index</pre><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_5_8406932" name="code" class="javascript">var text=this.data.text</pre><p></p> 
<pre></pre> 
3、调用viewTap函数 
<p></p> 
<p>在viewTap函数中调用内部的ball函数可以直接调用,如果需要在onReady函数中调用viewTap函数需要使用this。</p> 
<p></p><pre code_snippet_id="2049407" snippet_file_name="blog_20161214_6_6869005" name="code" class="html">onReady: function () { 
  this.drawBall() 
 },</pre><br> 
<br> 
<br> 
<p></p> 
<br> 
   
</pre>
Javascript 相关文章推荐
javascript 数组学习资料收集
Apr 11 Javascript
基于jQuery实现在线选座之高铁版
Aug 24 Javascript
javascript实现图片延迟加载方法汇总(三种方法)
Aug 27 Javascript
JavaScript中Function函数与Object对象的关系
Dec 17 Javascript
javascript字符串对象常用api函数小结(连接,替换,分割,转换等)
Sep 20 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
Jan 04 Javascript
JavaScript实现左右下拉框动态增删示例
Mar 09 Javascript
如何编写jquery插件
Mar 29 jQuery
在React中如何优雅的处理事件响应详解
Jul 24 Javascript
快速解决处理后台返回json数据格式的问题
Aug 07 Javascript
vue单页应用在页面刷新时保留状态数据的方法
Sep 21 Javascript
HTML+JavaScript实现扫雷小游戏
Sep 30 Javascript
百度地图API之百度地图退拽标记点获取经纬度的实现代码
Jan 12 #Javascript
js实现微博发布小功能
Jan 12 #Javascript
基于jQuery实现照片墙自动播放特效
Jan 12 #Javascript
canvas实现绘制吃豆鱼效果
Jan 12 #Javascript
微信小程序-小说阅读小程序实例(demo)
Jan 12 #Javascript
微信小程序 使用canvas制作K线实例详解
Jan 12 #Javascript
JS实现仿百度文库评分功能
Jan 12 #Javascript
You might like
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
2011/12/19 PHP
用PHP实现 上一篇、下一篇的代码
2012/09/29 PHP
ThinkPHP空模块和空操作详解
2014/06/30 PHP
php中把美国时间转为北京时间的自定义函数分享
2014/07/28 PHP
PHP+MYSQL中文乱码问题
2015/07/01 PHP
JS的document.all函数使用示例
2013/12/30 Javascript
Jquery遍历节点的方法小集
2014/01/22 Javascript
JS实现鼠标滑过链接改变网页背景颜色的方法
2015/10/20 Javascript
javascript实现input file上传图片预览效果
2015/12/31 Javascript
Bootstrap Metronic完全响应式管理模板学习笔记
2016/07/08 Javascript
jQuery实现点击表格单元格就可以编辑内容的方法【测试可用】
2016/08/01 Javascript
深入理解在JS中通过四种设置事件处理程序的方法
2017/03/02 Javascript
原生JS实现圣旨卷轴展开效果
2017/03/06 Javascript
vue如何集成raphael.js中国地图的方法示例
2017/08/15 Javascript
mpvue构建小程序的方法(步骤+地址)
2018/05/22 Javascript
使用RN Animated做一个“添加购物车”动画的方法
2018/09/12 Javascript
微信小程序控制台提示warning:Now you can provide attr &quot;wx:key&quot; for a &quot;wx:for&quot; to improve performance解决方法
2019/02/21 Javascript
vue-cli3项目展示本地Markdown文件的方法
2019/06/07 Javascript
浅谈vuex的基本用法和mapaction传值问题
2019/11/08 Javascript
Vue如何基于es6导入外部js文件
2020/05/15 Javascript
微信小程序实现日历签到
2020/09/21 Javascript
Python实现的石头剪子布代码分享
2014/08/22 Python
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
Python中文字符串截取问题
2015/06/15 Python
python中多个装饰器的调用顺序详解
2019/07/16 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
Pycharm如何导入python文件及解决报错问题
2020/05/10 Python
Django DRF认证组件流程实现原理详解
2020/08/17 Python
python使用scapy模块实现ping扫描的过程详解
2021/01/21 Python
SheIn俄罗斯:时尚女装网上商店
2017/02/28 全球购物
计算机应用与科学个人的自我评价
2013/11/15 职场文书
《金钱的魔力》教学反思
2014/02/24 职场文书
毕业赠语大全
2015/06/23 职场文书
创业计划书之暑假培训班
2019/11/09 职场文书
JS Canvas接口和动画效果大全
2021/04/29 Javascript