微信小程序之数据绑定原理解析


Posted in Javascript onAugust 14, 2019

最近在帮朋友写个小程序,本人小白一枚,但是好在计算机科班出身,有些概念一看还是明白的,只是之前没实际写过程序。于是最近看了好多资料和视频,不得不说,对于小白来讲,还是有点难度,但是不大。

通过最近看资料和别人的视频,总结一下:

1.页面布局,先画好。都是盒子,需要几个盒子,你就先画几个盒子。比如下面这个页面:

微信小程序之数据绑定原理解析

红色盒子

浅蓝盒子

绿色盒子(这个绿色盒子里又可以切分成两个盒子:白色字体较大一个盒子,白色字体较小一个盒子)

蓝色盒子

2.数据先静态,后动态

简单的说就是刚开始,你可以直接先往页面里塞静态数据,然后调试样式,样式搞定了,就可以把静态数据换成动态数据了。换动态数据呢,又可以分为两步,大神都是一步到位的,对于我这种小白来说,还是一步一个脚印来搞,比较放心。

比如下面这个页面:

静态数据

<view>
<!-- 顶部用户信息 -->
<view class="user-info">
 <view class="avatar"><image mode="widthFix" src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1565610447105&di=25b2b91e4ebe7831e13edb975cb0b669&imgtype=0&src=http%3A%2F%2Fimg.tukexw.com%2Fimg%2F2c99a00e77f69be1.jpg"></image></view>
 <view class="user-name">UncleBen</view>
</view>
 <!-- 订单、地址管理等常用设置 -->
 <view class="my-order">我的订单</view>
 <view class="my-address">地址管理</view>
 <view class="my-fav">我的收藏</view>
 <view class="my-invite">我的邀请</view>
 <view class="my-suggestion">意见反馈</view>
 <view class="my-service">联系客服</view> 
</view>
</view>

调试好之后,可以把数据放到js文件的data里,实现模拟动态数据:

wxml文件代码如下:

<view>
<!-- 顶部用户信息 -->
<view class="user-info">
 <view class="avatar"><image mode="widthFix" src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1565610447105&di=25b2b91e4ebe7831e13edb975cb0b669&imgtype=0&src=http%3A%2F%2Fimg.tukexw.com%2Fimg%2F2c99a00e77f69be1.jpg"></image></view>
 <view class="user-name">UncleBen</view>
</view>
 <!-- 订单、地址管理等常用设置 -->
<view class="my-settings">
 <view class="my-setting" wx:for="{{mySettings}}" wx:key="key">
  <view class="my-setting-icon"><image src="{{item.settingimg}}"></image></view>
  <view class="my-setting-name">{{item.settingname}}</view>
 </view>
</view>
</view>

js文件代码:

/**
  * 页面的初始数据
  */
 data: {
  mySettings:[{
   settingimg:'https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/2b701b3c2885c632f7d1a1b2dd5c694f4056975118f2bb44d68ff41d4023dc9538780a56d685b2343cacca669408e9bd?pictype=scale&from=30013&version=3.3.3.3&uin=522083376&fname=my-order.png&size=750',
   settingname:'我的订单'
  },
   {
    settingimg: 'https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/f5889b126abc482fe16d161e57b3ae63f5411f1af90bcec6c2e542b1ec93ce66eea7eaf3e71d015bee94fec4b3a44367?pictype=scale&from=30013&version=3.3.3.3&uin=522083376&fname=address.png&size=750',
    settingname: '地址管理'
  },
   {
    settingimg: 'https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/2b2fe155ca9d89c8161ebff210496b73c5190506a54395eaeff1791b9227f5e62e69be2a963296596785107726b62435?pictype=scale&from=30013&version=3.3.3.3&uin=522083376&fname=fav.png&size=750',
    settingname: '我的收藏'
  },
   {
    settingimg: 'https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/3951d94372e059873eb39c3bc9229cc961c8d1fcd8a1e7e60528751b701e5d646f10ec610ee04ede4e698dd2070a34de?pictype=scale&from=30013&version=3.3.3.3&uin=522083376&fname=invite.png&size=750',
    settingname: '我的邀请'
  },
   {
    settingimg: 'https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/1317fcb0bbd2322236467b56dcac81c6437aaf44f7770d676164eb96b8b79e92ef9c296e2292cc64de65e841d2cd9e0f?pictype=scale&from=30013&version=3.3.3.3&uin=522083376&fname=advice.png&size=750',
    settingname: '意见反馈'
  },
   {
    settingimg: 'https://picabstract-preview-ftn.weiyun.com/ftn_pic_abs_v3/89eb4773cccc56faffb3f9537c62347eefeac067deb86446812199c2bd6185c922c3534adeafd1f3610b076b6ac88b11?pictype=scale&from=30013&version=3.3.3.3&uin=522083376&fname=service.png&size=750',
    settingname: '联系客服'
  }]

 },

听同事说如果是在实际项目环境中,数据都是直接请求数据库或者API的,等看到这一知识点的时候再说吧!暂时到这里。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery的Repeater实现代码
Jul 17 Javascript
javascript 实现子父窗体互相传值的简单实例
Feb 17 Javascript
jquery实现点击弹出层效果的简单实例
Mar 03 Javascript
AngularJS入门教程(二):AngularJS模板
Dec 06 Javascript
Bootstrap实现登录校验表单(带验证码)
Jun 23 Javascript
使用angular帮你实现拖拽的示例
Jul 05 Javascript
react-router 路由切换动画的实现示例
Dec 03 Javascript
echarts实现词云自定义形状的示例代码
Feb 20 Javascript
ES6基础之解构赋值(destructuring assignment)
Feb 21 Javascript
jQuery实现数字华容道小游戏(实例代码)
Jan 16 jQuery
基于JQuery实现页面定时弹出广告
May 08 jQuery
何时/使用 Vue3 render 函数的教程详解
Jul 25 Javascript
微信公众号平台接口开发 菜单管理的实现
Aug 14 #Javascript
vue.js中ref和$refs的使用及示例讲解
Aug 14 #Javascript
微信公众号平台接口开发 获取微信服务器IP地址方法解析
Aug 14 #Javascript
vue filter 完美时间日期格式的代码
Aug 14 #Javascript
如何对react hooks进行单元测试的方法
Aug 14 #Javascript
vue 中 命名视图的用法实例详解
Aug 14 #Javascript
详解vue 命名视图
Aug 14 #Javascript
You might like
个人站长制做网页常用的php代码
2007/03/03 PHP
PHP使用array_fill定义多维数组的方法
2015/03/18 PHP
PHP 500报错的快速解决方法
2016/12/14 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
2017/10/25 PHP
jquery ui bootstrap 实现自定义风格
2014/11/14 Javascript
浅谈Unicode与JavaScript的发展史
2015/01/19 Javascript
javascript+canvas实现刮刮卡抽奖效果
2015/07/29 Javascript
JavaScript 控制字体大小设置的方法
2016/11/23 Javascript
javascript中闭包概念与用法深入理解
2016/12/15 Javascript
Bootstrap table表格简单操作
2017/02/07 Javascript
BootStrap表单宽度设置方法
2017/03/10 Javascript
兼容浏览器的js事件绑定函数(详解)
2017/05/09 Javascript
浅谈关于.vue文件中style的scoped属性
2017/08/19 Javascript
vue init失败简单解决方法(终极版)
2017/12/22 Javascript
jQuery内容选择器与表单选择器实例分析
2019/06/28 jQuery
jQuery实现倒计时功能完整示例
2020/06/01 jQuery
python获取文件真实链接的方法,针对于302返回码
2018/05/14 Python
python实现处理mysql结果输出方式
2020/04/09 Python
python开发入门——列表生成式
2020/09/03 Python
pandas实现导出数据的四种方式
2020/12/13 Python
基于HTML5 Canvas 实现弹出框效果
2017/06/05 HTML / CSS
肯尼亚网上商城:Kilimall
2016/08/20 全球购物
Perfumetrader荷兰:香水、化妆品和护肤品在线商店
2017/09/15 全球购物
傲盾软件面试题
2015/08/17 面试题
大四学年自我鉴定
2013/11/13 职场文书
初入社会应届生求职信
2013/11/18 职场文书
女大学生自我鉴定
2013/12/09 职场文书
校园报刊亭创业计划书
2014/01/02 职场文书
施工安全责任书
2014/04/14 职场文书
社区健康教育工作方案
2014/06/03 职场文书
材料员岗位职责
2015/02/10 职场文书
北京英语导游词
2015/02/12 职场文书
2015年教学工作总结
2015/04/02 职场文书
宿舍管理制度范本
2015/08/07 职场文书
一文搞懂Python Sklearn库使用
2021/08/23 Python
Java时间工具类Date的常用处理方法
2022/05/25 Java/Android