首页 > 代码库 > 微信小程序通过api接口将json数据展现到小程序示例

微信小程序通过api接口将json数据展现到小程序示例

实现知乎客户端的一个重要知识前提就是,要知道怎么通过知乎新闻的接口,来把数据展示到微信小程序端上。 

那么我们这一就先学习一下,如何将接口获取到的数据展示到微信小程序上。 

1.用到的知识点

<1> wx.request 请求接口资源(微信小程序api中的发起请求部分) 

<2>swiper 实现轮播图的组件 

<3>wx:for 循环语句 

<4>微信小程序的基础知识

2.实现原理

首先,先看一下这个请求函数

wx.request({ url: ******, //这里填写你的接口路径 header: { //这里写你借口返回的数据是什么类型,这里就体现了微信小程序的强大,直接给你解析数据,再也不用去寻找各种方法去解析json,xml等数据了  Content-Type: application/json }, data: {//这里写你要请求的参数  x: ‘‘ ,  y: ‘‘ },  success: function(res) { //这里就是请求成功后,进行一些函数操作 console.log(res.data) }})

3.代码 

分解图 

技术分享

<1>首先上一段知乎接口数据的json格式中的开头

"date":"20161114","stories":[ {  "images":[   "http://jb51.net.com/76125c357aa7b0ca6c9cbc41b4a5326d.jpg"  ],  "type":0,  "id":8975316,  "ga_prefix":"111422",  "title":"小事 · 我和你们一样" }, {  "images":[   "http://jb51.net/7c908a5940384123fd88287dbc6a2c98.jpg"  ],  "type":0,  "id":8977438,  "ga_prefix":"111421",  "title":"成长嘛,谁说就意味着一定要长大了?" },

<2>index.js中

Page({ data: {  duration: 2000,  indicatorDots: true,  autoplay: true,  interval: 3000,  loading: false,  plain: false }, onl oad: function () { var that = this//不要漏了这句,很重要 wx.request({  url: http://news-at.zhihu.com/api/4/news/latest,  headers: {  Content-Type: application/json  },  success: function (res) {  //将获取到的json数据,存在名字叫zhihu的这个数组中   that.setData({   zhihu: res.data.stories,   //res代表success函数的事件对,data是固定的,stories是是上面json数据中stories    })  } })   }})

<3> index.wxml中

<view ><swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" class="banners" interval="{{interval}}" duration="{{duration}}">//这里边的属性不重要,看下边 <block wx:for="{{zhihu}}">  <swiper-item class="banner" >   <image src=http://www.mamicode.com/"{{item.image}}" data-id="{{item.b}}" bindtap="bindViewTap" class="banner-image" width="100%" height="100%"/>   <text class="banner-title">{{item.title}}</text>  </swiper-item> </block></swiper> </view>

看完这个代码,你会想,根据微信小程序的绑定原理,这里边的代码哪里调用了onLoad()这个函数,不用多想,微信小程序给你省略了这些步骤。直接调用zhihu这个数组就行。

微信小程序通过api接口将json数据展现到小程序示例