微信小程序 详解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 相关文章推荐
给moz-firefox下添加IE方法和属性
Apr 10 Javascript
javascript中字符串替换函数replace()方法与c# 、vb 替换有一点不同
Jun 25 Javascript
20款效果非常棒的 jQuery 插件小结分享
Nov 18 Javascript
JS实现图片预加载无需等待
Dec 21 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
Dec 04 Javascript
javascript中style.left和offsetLeft的用法说明
Mar 07 Javascript
JavaScript调试工具汇总
Dec 23 Javascript
JavaScript中数组slice和splice的对比小结
Sep 22 Javascript
纯原生js实现贪吃蛇游戏
Apr 16 Javascript
使用classList来实现两个按钮样式的切换方法
Jan 24 Javascript
微信小程序开发问题之wx.previewImage
Dec 25 Javascript
微信小程序全局变量GLOBALDATA的定义和调用过程解析
Sep 23 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生成静态HTML页面最简单方法示例
2015/04/09 PHP
利用laravel搭建一个迷你博客实战教程
2017/08/13 PHP
Dojo 学习笔记入门篇 First Dojo Example
2009/11/15 Javascript
15款优秀的jQuery导航菜单插件分享
2011/07/19 Javascript
javascript获得服务器端控件的ID的实现代码
2011/12/28 Javascript
几种延迟加载JS代码的方法加快网页的访问速度
2013/10/12 Javascript
JS中的form.submit()不能提交表单的错误原因
2014/10/08 Javascript
jquery操作复选框checkbox的方法汇总
2015/02/05 Javascript
js实现基于正则表达式的轻量提示插件
2015/08/29 Javascript
学习JavaScript设计模式(多态)
2015/11/25 Javascript
基于Jquery插件Uploadify实现实时显示进度条上传图片
2020/03/26 Javascript
教你如何在Node.js中使用jQuery
2016/08/28 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
jQuery UI实现动画效果代码分享
2018/08/19 jQuery
elementUI select组件使用及注意事项详解
2019/05/29 Javascript
nodejs对mongodb数据库的增加修删该查实例代码
2020/01/05 NodeJs
微信小程序实现滚动Tab选项卡
2020/11/16 Javascript
Python中编写ORM框架的入门指引
2015/04/29 Python
分析用Python脚本关闭文件操作的机制
2015/06/28 Python
python使用xslt提取网页数据的方法
2018/02/23 Python
Python数据处理numpy.median的实例讲解
2018/04/02 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
2019/06/18 Python
python如何实时获取tcpdump输出
2020/09/16 Python
CSS3教程(1):什么是CSS3
2009/04/02 HTML / CSS
美国牙科折扣计划:DentalPlans.com
2019/08/26 全球购物
AURALog面试题软件测试方面
2013/10/22 面试题
应届毕业生的个人自我鉴定
2013/10/24 职场文书
经理职责范文
2013/11/08 职场文书
幼儿园消防安全制度
2014/01/26 职场文书
银行竞聘演讲稿范文
2014/04/23 职场文书
委托书怎么写
2014/07/31 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
公司慰问信范文
2015/03/23 职场文书
主婚人致辞精选
2015/07/28 职场文书
父亲节感言
2015/08/03 职场文书
创业计划书之家政服务
2019/09/18 职场文书