我们wxml没有直接调用数据的能力,我们的逻辑是通过js调用数据,再由js传递给wxml才能够显示出来.那么怎么由js传递给wxml?
 

首先我的js里面有这样一段代码

process: function(){
  var date = 'Nov 18 2019';
},
我需要将这个数据显示到wxml里面去。需要数据绑定,那么小程序里面的数据绑定是如何绑定到页面中的?我们只需要在data里面写上这个数据就可以数据绑定了。
js
data: {
  date: 'Nov 18 2019'
},
wxml
<text>{{date}}</text>
双花括号是数据绑定的基本语法。data是page里面比较特殊的一个变量,只有在data下面的数据才能够进行一个数据绑定,其他key里面不行
像小程序里面的这种数据绑定叫做单向数据绑定。就是js里面的变量的值变了,wxml会自动的变。但是如果wxml的数据变了,data里面的数据是不会自动的更新的。需要手动的设置
我们从服务器取数据一般是写在onLoad里面,我们模拟一段
onLoad: function (options) {
  var post_content = {
    date: 'Nov 18 2019',
    title: '正是虾肥蟹壮时',
    post_img: '/images/post/crab.png',
    content: '菊黄蟹正肥,品尝秋之味。徐志摩把看初花的荻芦和到楼外楼吃蟹,并列为秋天来杭州不能错过到风雅之事;用林妹妹到话讲时“螯封嫩玉双双满',
    view_num: '112',
    collect_num: '96',
    author_img: '/images/avatar/1.png'
  }
  this.setData(post_content);
},

这样设置好之后,页面就可以拿到数据了,setData的作用简单的来说就是拷贝到data里面去。

<view class='post-container'>
  <view class='post-author-date'>
    <image src='{{author_img}}'></image>
    <text>{{date}}</text>
  </view>
  <text class='post-title'>{{title}}</text>
  <image class='post-image' src='{{post_img}}'></image>
  <text class='post-content'>{{content}}</text>
  <view class='post-like'>
    <image class='post-like-image' src='/images/icon/chat.png'></image>
    <text class='post-like-font'>{{collect_num}}</text>
    <image class='post-like-image' src='/images/icon/view.png'></image>
    <text class='post-like-font'>{{view_num}}</text>
  </view>
</view>
*:如果数据是绑定在属性里面的,不能把引号去掉,一定要把引号写上。如果去掉会直接报错。

小程序数据绑定和setData的更多相关文章

  1. 小程序中的setData的使用

    小程序中的setData setData 函数用于将数据从逻辑层发送到视图层(异步),同时改变对应的 this.data 的值(同步). 直接修改 this.data 而不调用 this.setDat ...

  2. 微信小程序 数据绑定方式

    与vue不同,在微信小程序中,js的数据和前端显示的数据是单数据流,也就是说,js里边的数据变了(通过setData),前端能立刻显示.但如果前端数据变了,js中的变量不能改变. 这个相比传统的前端已 ...

  3. 微信小程序中 this.setData is not a function报错

    在微信小程序中我们一般通过以下方式来修改data中的数据: 比如获取小程序缓存: wx.getStorage({ key: 'is_screen', success: function (res) { ...

  4. 小程序中this.setData的使用和注意事项

    前言:微信小程序中经常需要用到this.setData({})把变量值渲染到视图层,那到底什么是this.setData,如何使用?需要注意哪些?作为一个初学者,分享一点我的经验,希望大家批评指正. ...

  5. 小程序数据绑定点赞效果切换(交流QQ群:604788754)

    如果对本例有更好的意见和建议,希望给予留言或是加群跟群主联系,交流学习. WXML: <block wx:for="{{nums}}" wx:for-index='idx' ...

  6. 微信小程序之this.setData

    Page.prototype.setData() setData 函数用于将数据从逻辑层发送到视图层,同时改变对应的 this.data 的值. 注意: 直接修改 this.data 无效,无法改变页 ...

  7. 【微信】微信小程序 调用this.setData报错this.setData is not a function;

    在调用方法过程中 报错如下: 代码如下: Page({ /** * 页面的初始数据 */ data: { userLocalInfo:'用户地址' }, /** * 返回swapping页面 */ b ...

  8. 微信小程序-数据绑定

    在js页面的data字典内添加绑定数据 data: { "messg":"helloworld " }, 在wxml页面内使用{{}}调用数据

  9. 微信小程序setData的使用,通过[...]进行动态key赋值

    首先先介绍一下微信小程序Page.prototype.setData(Object data, Function callback)的讲解: setData函数用于将数据从逻辑层发送到视图层(异步), ...

随机推荐

  1. 【JS新手教程】JS获取当前星期几的几种方法

    该文通过获取星期几的几种方法,介绍JS里的数组,判断,和字符串截取,可以当作新手教程看,小白也看的懂.获取星期几,可通过Date()对象的getDay()获取,获取的是一个数字,对应的是0,1,2,3 ...

  2. [CareerCup] 9.8 Represent N Cents 组成N分钱

    9.8 Given an infinite number of quarters (25 cents), dimes (10 cents), nickels (5 cents) and pennies ...

  3. Python3 IO编程之StringIO和BytesIO

    StringIO 很多时候,数据读写不一定是文件,也可以在内存中读写. 要把str写入StringIO,我们需要先创建一个StringIO,然后像文件一样写入即可 >>> from ...

  4. 最新 企叮咚java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿. 企叮咚等10家互联网公司的校招Offer,因为某些自身原因最终选择了 企叮咚.6.7月主要是做系统复习.项目复盘.Leet ...

  5. java junit4-JUnit测试报 No socket available 错误

    问题描述 JUnit测试报 No socket available 错误 Eclipse进行JUnit测试时,总弹出 No socket available 窗口,导致测试不能进行. 解决方案一: 打 ...

  6. [转帖]Hive学习之路 (一)Hive初识

    Hive学习之路 (一)Hive初识 https://www.cnblogs.com/qingyunzong/p/8707885.html 讨论QQ:1586558083 目录 Hive 简介 什么是 ...

  7. HCIA SWITCHING&ROUTTING 笔记——第一章 TCP/IP基础知识(2)

    视频地址:https://ilearningx.huawei.com/courses/course-v1:HuaweiX+EBGTC00000336+Self-paced/courseware/abb ...

  8. Java连接Jira,创建、修改、删除工单信息

    还不了解Jira是什么的同学可以看一下这篇文章:https://www.cnblogs.com/wgblog-code/p/11750767.html 本篇文章主要介绍如何使用Java操作Jira,包 ...

  9. AJAX 调用WebService 、WebApi 增删改查

    WebService 页面: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 3 ...

  10. hdu1501 记忆化搜索。。。

    Problem Description Given three strings, you are to determine whether the third string can be formed ...