zoukankan      html  css  js  c++  java
  • 微信小程序通过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.代码

    分解图

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

    <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
     },
     onLoad: 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="{{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这个数组就行。

  • 相关阅读:
    加密算法 科普文
    《电商后台系统产品逻辑解析》学习笔记
    基于Docker的Consul服务发现集群搭建
    从阿里中台战略看企业IT架构转型之道
    CanalSharp.AspNetCore v0.0.4-支持输出到MongoDB
    领域驱动设计学习之路—DDD的原则与实践
    一个实时收集MySql变更记录的组件CanalSharp.AspNetCore
    基于Jenkins Pipeline的ASP.NET Core持续集成实践
    熊逸《唐诗50讲》感时篇
    一个Mini的ASP.NET Core框架的实现
  • 原文地址:https://www.cnblogs.com/dekevin/p/10226740.html
Copyright © 2011-2022 走看看