微信小程序 详解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 相关文章推荐
浏览器兼容console对象的简要解决方案分享
Oct 24 Javascript
表单元素与非表单元素刷新区别详细解析
Nov 06 Javascript
jquery遍历select元素(实例讲解)
Dec 31 Javascript
JavaScript中textRange对象使用方法小结
Mar 24 Javascript
js实现简洁的TAB滑动门效果代码
Sep 06 Javascript
javascript中利用柯里化函数实现bind方法【推荐】
Apr 29 Javascript
js图片延迟加载(Lazyload)三种实现方式
Mar 01 Javascript
vue路由嵌套的SPA实现步骤
Nov 06 Javascript
vue做移动端适配最佳解决方案(亲测有效)
Sep 04 Javascript
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
Dec 06 Javascript
js仿360开机效果
Dec 26 Javascript
基于javascript的无缝滚动动画实现2
Aug 07 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
php实现专业获取网站SEO信息类实例
2015/04/02 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
2016/01/04 PHP
CodeIgniter生成静态页的方法
2016/05/17 PHP
PHP 实现公历日期与农历日期的互转换
2017/09/13 PHP
PHP数据对象映射模式实例分析
2019/03/29 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
2020/02/23 PHP
PHP isset()及empty()用法区别详解
2020/08/29 PHP
统计出现最多的字符次数的js代码
2010/12/03 Javascript
jquery动画4.升级版遮罩效果的图片走廊--带自动运行效果
2012/08/24 Javascript
Node.js与PHP、Python的字符处理性能对比
2014/07/06 Javascript
在Node.js中使用HTTP上传文件的方法
2015/06/23 Javascript
AngularJS基础 ng-include 指令简单示例
2016/08/01 Javascript
js中获取键盘事件的简单实现方法
2016/10/10 Javascript
JS+CSS实现滚动数字时钟效果
2017/12/25 Javascript
jQuery 操作 HTML 元素和属性的方法
2018/11/12 jQuery
详解CommonJS和ES6模块循环加载处理的区别
2018/12/26 Javascript
解决Vue 移动端点击出现300毫秒延迟的问题
2020/07/21 Javascript
[01:04:14]VP vs TNC 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
python实现html转ubb代码(html2ubb)
2014/07/03 Python
python实现批量下载新浪博客的方法
2015/06/15 Python
python实现爬虫统计学校BBS男女比例之多线程爬虫(二)
2015/12/31 Python
Python中运算符&quot;==&quot;和&quot;is&quot;的详解
2016/10/08 Python
Python简单网络编程示例【客户端与服务端】
2017/05/26 Python
Django添加sitemap的方法示例
2018/08/06 Python
Python学习笔记之lambda表达式用法详解
2019/08/08 Python
使用Rasterio读取栅格数据的实例讲解
2019/11/26 Python
解决python3.x安装numpy成功但import出错的问题
2020/11/17 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
2021/03/02 Python
大学生写自荐信的技巧
2014/01/08 职场文书
大队干部竞选演讲稿
2014/04/28 职场文书
创先争优一句话承诺
2014/05/29 职场文书
承诺书格式
2014/06/03 职场文书
群众路线对照检查材料思想汇报怎么写
2014/09/18 职场文书
工作收入证明模板
2014/10/10 职场文书
2015年学校保卫部工作总结
2015/05/11 职场文书
详解Python牛顿插值法
2021/05/11 Python