发表于: 2019-12-10 22:28:30
1 1468
今天完成的事情:
了解方法名setdata
了解到事件:bindtap
明天计划的事情:
点赞功能
遇到的问题:
点赞功能已经获取到数组对象 问题是怎么把它渲染到页面上而且,
setData只能渲染对象明天在找个方法.
收获:
wx.request:
发起 HTTPS 网络请求。就是用来调后台接口,
wx.request({
url: '', //仅为示例,并非真实的接口地址
data: {},
header: {
'content-type': 'application/json' // 默认值
},
success (res) {
console.log(res.data)
}
})
第一个 是传url接口地址
第二个data:是用来传递参数的
第三个header:就是请求头
所以的请求接口的写法都是这样写的必须要有这3个请求头看情况。
success()函数
就是你请求后的数据所返回的函数参数,看你请求是否成功。然后一会得到数据从中提取出来。
方法名
什么是方法,就是通过视图 层的事件点击来触函数里面的方法进行调用,然后在返回结果渲染到页面上.
setData
通过setData方法来进行掉头success返回的参数数据.
注意问题:
getData(){
success:function (res) {
url: this.api + '/article/all',
if(res.data.code == 200){
this.setData({
list: res.data.data.list
})
}
}
//简写
success(res){} 等于success:function (res){}
如果你用this.setData()方法this 的指向不是指向getData跟函数而是指向 success(res)函数.
ES6的写法
getData(){
wx.request({
url: this.api + '/article/all',
success:(res) => {
if(res.data.code == 200){
console.log("成功2")
this.setData({
list: res.data.data.list
})
}
console.log(res)
}
});
},
success:()=>{},通过箭头指向来代替function写法。这样this指向就是根函数.
注意:
setData({
里面只能传递对象
}) .
注意:
由于微信小程序是没有双向数据绑定的,所以在要更改值都要用setData({})里面进行更改才能渲染到数据上面去
data: {
wantImg: "./img/点赞.png",
},
this.setData({
wantImg: "./img/图层1.png",
});
HTML页面渲染数据图片就会进行更改,凡是在JS里面更改原来变量都要在this.serData()进行更改否则是无效的,同时变量要在data{}对象里面创建。
事件的使用
什么是事件,事件就是通过你的鼠标点击 键盘 或者鼠滑动过去来触发里面的
bindtap
bindtap事件,当用户点击会在页面处理相应的函数,就是点击事件。
代码
<image bindtap="likeName" class="like_image" src="./img/图层1.png">点击</image>
likeName(e){
//点赞和收藏
console.log(e);
console.log("成功");
}
就调用这个名字likeName函数,然后在里面写方法判断来实现你想要的功能.
视图容器
scaroll-view:
可滚动视图区域,使用竖向滚动时,需要给scroll-view一个固定高度,通过 WXSS 设置 height。组件属性的长度单位默认为px,2.4.0起支持传入单位(rpx/px)。
评论