亲宝软件园·资讯

展开

微信小程序如何调用新闻接口实现列表循环

祈澈菇凉 人气:0

找到了一个比较好用的新闻接口

1:首先写js,老样子

用request请求接口url,当请求成功的时候,在控制台打印一下返回的res.data数据,在控制台可以看到打印了接口数据了,在请求接口成功之后,用setData接收数据,并且需在data中声明一个接收数据的变量。

Page({
 data: {
  // 3:需在data中声明一个接收数据的变量。
  list: []
 },
 onLoad: function (options) {
  wx.request({
   url: 'https://www.apiopen.top/journalismApi',
   header: {
    'content-type': 'application/json'
   },
   success: res => {
    //1:在控制台打印一下返回的res.data数据
    console.log(res.data)
    //2:在请求接口成功之后,用setData接收数据
    this.setData({
      //第一个data为固定用法,第二个data是json中的data
     list: res.data.data
    })
   }
  })
 },
})

我在 this.setData里面写的, list: res.data.data, 第一个data为固定用法,第二个data是json中的data,因为新闻列表里面的所有的json数据都是放在data里面了。

2:css我就不多说了

.item {
 width: 100%;
 height: 186rpx;
 position: relative;
 display: flex;
 margin: 10rpx 10rpx;
 border-bottom: 1px solid rgb(197, 199, 199);
}
.item .number-wrapper {
 height: 100%;
 flex: 1;
 display: flex;
 flex-direction: column;
}
.item .img {
 width: 150rpx;
 height: 150rpx;
 padding: 20rpx;
}
.number-wrapper .name {
 margin: 10rpx 40rpx 20rpx 10rpx;
 font-size: 35rpx;
 overflow: hidden;
}
.count {
 font-size: 34rpx;
}

3:然后最重要的就是数据渲染

在wxml里面进行操作,首先是循环列表,那就要写一个wx:for列表渲染,然后在取出自己想要的数据,这里想要取出图片,标题和时间,根据json的数据结构来解析即可。

<view wx:for="{{list.auto}}" wx:key="index">
 <view class="item">
  <image class="img" src="{{item.picInfo[0].url}}" mode="scaleToFill"></image>
  <view class="number-wrapper">
   <text class="name">{{item.title}}</text>
   <view class="count-wrapper">
    <text class="count">{{item.ptime}}</text>
   </view>
  </view>
 </view>
</view>

最重要的是图片的解析,完成之后,可以看到,接口数据已经渲染在前端界面了,这个时候已经完成了小程序调用新闻列表实现列表循环这个需求啦。

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

加载全部内容

相关教程
猜你喜欢
用户评论