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


Posted in Javascript onJanuary 20, 2017

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

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

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://3water.com.com/76125c357aa7b0ca6c9cbc41b4a5326d.jpg"
   ],
   "type":0,
   "id":8975316,
   "ga_prefix":"111422",
   "title":"小事 · 我和你们一样"
  },
  {
   "images":[
    "http://3water.com/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这个数组就行。

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

Javascript 相关文章推荐
JQuery Ajax 跨域访问的解决方案
Mar 12 Javascript
function foo的原型与prototype属性解惑
Nov 19 Javascript
JavaScript中使用构造器创建对象无需new的情况说明
Mar 01 Javascript
利用JQuery和JS实现奇偶行背景颜色自定义效果
Nov 19 Javascript
html+js+highcharts绘制圆饼图表的简单实例
Aug 04 Javascript
JavaScript调试的多个必备小Tips
Jan 15 Javascript
运用jQuery写的验证表单(实例讲解)
Jul 06 jQuery
JavaScript正则表达式函数总结(常用)
Feb 22 Javascript
小程序云开发初探(小结)
Oct 24 Javascript
详解微信小程序用定时器实现倒计时效果
Apr 30 Javascript
node爬取新型冠状病毒的疫情实时动态
Feb 06 Javascript
react合成事件与原生事件的相关理解
May 13 Javascript
BootStrap栅格系统、表单样式与按钮样式源码解析
Jan 20 #Javascript
Vue开发过程中遇到的疑惑知识点总结
Jan 20 #Javascript
JavaScript简单验证表单空值及邮箱格式的方法
Jan 20 #Javascript
JavaScript基于Dom操作实现查找、修改HTML元素的内容及属性的方法
Jan 20 #Javascript
BootStrap CSS全局样式和表格样式源码解析
Jan 20 #Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
Jan 20 #Javascript
Javascript DOM事件操作小结(监听鼠标点击、释放,悬停、离开等)
Jan 20 #Javascript
You might like
php中serialize序列化与json性能测试的示例分析
2013/04/27 PHP
PHP定时任务延缓执行的实现
2014/10/08 PHP
编写PHP脚本来实现WordPress中评论分页的功能
2015/12/10 PHP
PHP函数import_request_variables()用法分析
2016/04/02 PHP
javascript基础之查找元素的详细介绍(访问节点)
2013/07/05 Javascript
cookie中的path与domain属性详解
2013/12/18 Javascript
javascript的函数作用域
2014/11/12 Javascript
nodejs中实现阻塞实例
2015/03/24 NodeJs
AngularJS directive返回对象属性详解
2016/03/28 Javascript
JavaScript简单实现弹出拖拽窗口(一)
2016/06/17 Javascript
jQuery之简单的表单验证实例
2016/07/07 Javascript
AngularJS之自定义服务详解(factory、service、provider)
2017/04/14 Javascript
React Native之ListView实现九宫格效果的示例
2017/08/02 Javascript
JS实现简单短信验证码界面
2017/08/07 Javascript
vue服务端渲染页面缓存和组件缓存的实例详解
2018/09/18 Javascript
利用JS动态生成隔行换色HTML表格的两种方法
2018/10/09 Javascript
JS如何监听div的resize事件详解
2020/12/03 Javascript
[46:25]DOTA2上海特级锦标赛主赛事日 - 4 败者组第五轮 MVP.Phx VS EG第二局
2016/03/05 DOTA
用Python将IP地址在整型和字符串之间轻松转换
2017/03/22 Python
利用python模拟实现POST请求提交图片的方法
2017/07/25 Python
Python实现扩展内置类型的方法分析
2017/10/16 Python
简单的python协同过滤程序实例代码
2018/01/31 Python
pygame游戏之旅 按钮上添加文字的方法
2018/11/21 Python
python之yield和Generator深入解析
2019/09/18 Python
使用pandas实现连续数据的离散化处理方式(分箱操作)
2019/11/22 Python
python matplotlib:plt.scatter() 大小和颜色参数详解
2020/04/14 Python
python中可以声明变量类型吗
2020/06/18 Python
python更新数据库中某个字段的数据(方法详解)
2020/11/18 Python
秋季红领巾广播稿
2014/01/27 职场文书
自荐书范文范例
2014/02/13 职场文书
大学生学期自我鉴定
2014/03/19 职场文书
校园活动宣传方案
2014/03/28 职场文书
合作意向书格式及范文
2014/03/31 职场文书
公司离职证明样本
2014/09/13 职场文书
详解MySQL 联合查询优化机制
2021/05/10 MySQL
MySQL基于索引的压力测试的实现
2021/11/07 MySQL