微信小程序通過(guò)api接口將json數(shù)據(jù)展現(xiàn)到小程序示例
實(shí)現(xiàn)知乎客戶(hù)端的一個(gè)重要知識(shí)前提就是,要知道怎么通過(guò)知乎新聞的接口,來(lái)把數(shù)據(jù)展示到微信小程序端上。
那么我們這一就先學(xué)習(xí)一下,如何將接口獲取到的數(shù)據(jù)展示到微信小程序上。
1.用到的知識(shí)點(diǎn)
<1> wx.request 請(qǐng)求接口資源(微信小程序api中的發(fā)起請(qǐng)求部分)
<2>swiper 實(shí)現(xiàn)輪播圖的組件
<3>wx:for 循環(huán)語(yǔ)句
<4>微信小程序的基礎(chǔ)知識(shí)
2.實(shí)現(xiàn)原理
首先,先看一下這個(gè)請(qǐng)求函數(shù)
wx.request({ url: '******', //這里填寫(xiě)你的接口路徑 header: { //這里寫(xiě)你借口返回的數(shù)據(jù)是什么類(lèi)型,這里就體現(xiàn)了微信小程序的強(qiáng)大,直接給你解析數(shù)據(jù),再也不用去尋找各種方法去解析json,xml等數(shù)據(jù)了 'Content-Type': 'application/json' }, data: {//這里寫(xiě)你要請(qǐng)求的參數(shù) x: '' , y: '' }, success: function(res) { //這里就是請(qǐng)求成功后,進(jìn)行一些函數(shù)操作 console.log(res.data) } })
3.代碼
分解圖
<1>首先上一段知乎接口數(shù)據(jù)的json格式中的開(kāi)頭
"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":"成長(zhǎng)嘛,誰(shuí)說(shuō)就意味著一定要長(zhǎng)大了?" },
<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數(shù)據(jù),存在名字叫zhihu的這個(gè)數(shù)組中 that.setData({ zhihu: res.data.stories, //res代表success函數(shù)的事件對(duì),data是固定的,stories是是上面json數(shù)據(jù)中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>
看完這個(gè)代碼,你會(huì)想,根據(jù)微信小程序的綁定原理,這里邊的代碼哪里調(diào)用了onLoad()這個(gè)函數(shù),不用多想,微信小程序給你省略了這些步驟。直接調(diào)用zhihu這個(gè)數(shù)組就行。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript構(gòu)造函數(shù)與原型之間的聯(lián)系
這篇文章主要介紹了JavaScript構(gòu)造函數(shù)與JavaScript原型,構(gòu)造函數(shù)是一種特殊的函數(shù),主要用來(lái)初始化對(duì)象,即為對(duì)象成員變量賦初始值,它總與?new?一起使用,構(gòu)造函數(shù)通過(guò)原型分配的函數(shù)是所有對(duì)象所共享的。下面來(lái)看看文章的集體介紹內(nèi)容吧2021-12-12使用?render?函數(shù)封裝高擴(kuò)展的組件
這篇文章主要介紹了使用?render?函數(shù)封裝高擴(kuò)展的組件,vue?官網(wǎng)給出的?render?函數(shù)的例子只能體現(xiàn)?render?函數(shù)的優(yōu)雅的一方面,卻不能看出其擴(kuò)展性,今天就來(lái)封裝一個(gè)體現(xiàn)其擴(kuò)展性的組件,需要的朋友可以參考一下2021-12-12umi插件開(kāi)發(fā)仿dumi項(xiàng)目實(shí)現(xiàn)markdown文件轉(zhuǎn)為頁(yè)面
這篇文章主要介紹了umi插件開(kāi)發(fā)仿dumi項(xiàng)目實(shí)現(xiàn)markdown文件轉(zhuǎn)為頁(yè)面方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01Web?Animations?API實(shí)現(xiàn)一個(gè)精確計(jì)時(shí)的時(shí)鐘示例
這篇文章主要為大家介紹了Web?Animations?API實(shí)現(xiàn)一個(gè)精確計(jì)時(shí)的時(shí)鐘示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07微信小程序遇到修改數(shù)據(jù)后頁(yè)面不渲染的問(wèn)題解決
這篇文章主要介紹了微信小程序遇到修改數(shù)據(jù)后頁(yè)面不渲染的問(wèn)題解決的相關(guān)資料,需要的朋友可以參考下2017-03-03JavaScript實(shí)現(xiàn)棧結(jié)構(gòu)詳細(xì)過(guò)程
這篇文章主要介紹了JavaScript實(shí)現(xiàn)棧結(jié)構(gòu)詳細(xì)過(guò)程,棧即stack它是一種受限的線(xiàn)性表,后進(jìn)先出LIFO,更多具體的內(nèi)容,需要的小伙伴參考下面文章的詳細(xì)內(nèi)容2021-12-12特殊字符、常規(guī)符號(hào)及其代碼對(duì)照表
特殊字符、常規(guī)符號(hào)及其代碼對(duì)照表...2006-06-06threeJs實(shí)現(xiàn)波紋擴(kuò)散及光標(biāo)浮動(dòng)效果詳解
這篇文章主要為大家介紹了threeJs實(shí)現(xiàn)波紋擴(kuò)散及光標(biāo)浮動(dòng)效果詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03