wx:if类似VUE中的v-if,通常用来控制元素的显示隐藏,里面存布尔值;wx:for中用来存储需要遍历的数据,可以是数组,数据,索引值;wx:key用来装索引值,防止报错
作为一个渣前端,记录一下人生中绑的第一个后台数据,毕竟以前都是丢给后台绑的......方便以后查阅。公司之前的项目绑后台都是用PHP封装来进行后台数据绑定,我实在看不懂,还是乖乖用wx.request()吧。
JS代码如下:
Page({
/**
* 页面的初始数据
*/
data: {
content: [
{
phone:[]
}
getdata: function () { //定义函数名称
var that = this; // 这个地方非常重要,重置data{}里数据时候setData方法的this应为以及函数的this, 如果在下方的sucess直接写this就变成了wx.request()的this了
wx.request({
url: 'https://wj.antyiz.xyz/api/getPlanPhone', //请求地址
data: { //发送给后台的数据
plannumber: ''
},
header: { //请求头
'content-type': 'application/json' // 默认值
},
method: "GET", //get为默认方法/POST
success: function (res) {
console.log(res.data) //res.data相当于ajax里面的data,为后台返回的数据
that.setData({ //如果在sucess直接写this就变成了wx.request()的this了.必须为getdata函数的this,不然无法重置调用函数
phone: res.data
})
},
fail: function (err) { },//请求失败
complete: function () { }//请求完成后执行的函数
})
}
控制台consloe.log()的数据如下:
WXML界面:
<text class='telephone-number' wx:for="{{phone}}">{{item[0].plannumber}}</text>
绑定成功!
基础库兼容
某些API在低版本基础库无法使用,需做兼容性处理。除用if else 之外还可以用微信系统信息内的API进行查看
不同页面传值方式
1. 通过
URL进行传值,在另一个页面可通过options拿到
2.通过app.js传值,可通过app.函数名.方法名获取
3.把一个页面的值写在缓存里面,在另外一个页面调取,官方提供10M的本地缓存
后面加Sync的为同步缓存,不加的为异步缓存。
同步与异步是指的消息通讯机制。就是信息传来传去的时候是同步还异步。重点强调的是通讯这个动作。举例说明一下,比如要请求用户信息的时候,需要从缓存中获取iduser这个变量,那只有获取到这个变量才能进行下一步。那就应该使用wx.getStorageSync。这样能确保一定能获取到这个变量。
说个大白话的例子。比如打电话给前台,帮忙查询一个快递,如果电话没有挂,你在这边一直等待,等前台MM查完告诉你有没有,这叫“同步”。如果前台妹子说等会给你回信,电话挂了这叫“异步”。