发表于: 2019-12-10 22:28:30

1 1469


今天完成的事情:

了解方法名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)。



返回列表 返回列表
评论

    分享到