微信小程序开发教程-从零开始(1)javascript
前俩章中咱们学会了怎么搭建一个微信小程序的框架以及显示一个文章列表,这篇文章我将讲解列表的网络请求以及网络数据的对接。html
首先找到咱们的index.js文件,而后看看微信小程序的网络请求文档很轻松的就能够找到咱们的示例代码:java
wx.request({
url: 'test.php',
data: {
x: '' ,
y: ''
},
header: {
'Content-Type': 'application/json'
},
success: function(res) {
console.log(res.data)
}
})复制代码
url为咱们须要请求的接口git
data为咱们的请求参数github
header为设置请求的 header , header 中不能设置 Refererjson
success收到开发者服务成功返回的回调函数,res = {data: '开发者服务器返回的内容'}小程序
console.log( res.data )为打印请求下来的数据微信小程序
默认为get请求,在此咱们就用默认的请求方式,具体的代码以下:api
onLoad: function () {
console.log('onLoad')
var that = this
wx.request( {
url: 'http://sep9.cn/qt5wix',
data: {},
header: {
'Content-Type': 'application/json'
},
success: function( res ) {
console.log( res.data )
}
})
}复制代码
运行一下看看咱们的请求是否有数据,结果以下图:
能够看出咱们的数据请求已是成功的,是否是很是的简单啊?😄下面咱们再来看看怎么给相应的UI赋值吧。
首先在咱们网络成功的地方加上如下代码:
success: function( res ) {
console.log( res.data )
that.setData( {
})
}复制代码
that.setData( { })
这个方法主要是用来赋值的
而后咱们获得的数据为res.data
经过打印咱们能够看出咱们的数据结构和原来写死的数据结构是同样的,可是里面的字段确不同,所以,咱们须要把请求下来的值赋值给咱们原来的数据源,而后把原有的数据源的字段改为网络请求下来的字段最终的代码以下:
//index.js
//获取应用实例
var app = getApp()
Page({
data: {
newList:[
]
},
//事件处理函数
bindViewTap: function() {
wx.navigateTo({
url: '../logs/logs'
})
},
onLoad: function () {
console.log('onLoad')
var that = this
wx.request( {
url: 'http://sep9.cn/qt5wix',
data: {},
header: {
'Content-Type': 'application/json'
},
success: function( res ) {
console.log( res.data )
that.setData( {
newList: res.data
})
}
})
}
})复制代码
再把index.wxml中赋值的字段改为服务器返回相应的字段,运行结果以下图:
不知道什么缘由,我这接口返回的图片url在微信小程序中没法显示,为了让效果更加的接近咱们的效果图,在本地给咱们的数据源加了些网络上的图片,代码以下:
data: {
newList:[{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://a.hiphotos.baidu.com/image/pic/item/c8ea15ce36d3d539be4d77b83f87e950352ab05c.jpg"} ,
{fistImg:"http://h.hiphotos.baidu.com/image/pic/item/8d5494eef01f3a2922e765c99b25bc315c607c8d.jpg"} ,
{fistImg:"http://c.hiphotos.baidu.com/image/pic/item/3b292df5e0fe9925ae23d95736a85edf8db1718d.jpg"} ,
{fistImg:"http://g.hiphotos.baidu.com/image/pic/item/faedab64034f78f099a529f47b310a55b3191c0e.jpg"} ,
{fistImg:"http://g.hiphotos.baidu.com/image/pic/item/bd315c6034a85edf9ba34e244b540923dd54758d.jpg"} ,
{fistImg:"http://f.hiphotos.baidu.com/image/pic/item/00e93901213fb80e0ee553d034d12f2eb9389484.jpg"} ,
{fistImg:"http://img1.imgtn.bdimg.com/it/u=2955244448,132069077&fm=21&gp=0.jpg"} ,
{fistImg:"http://image.tianjimedia.com/uploadImages/2014/127/32/VP974HZ0AXL2.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"} ,
{fistImg:"http://img0.imgtn.bdimg.com/it/u=1640246403,1832676351&fm=21&gp=0.jpg"}
]
}复制代码
随便弄几张图了,看看效果如何,😄
原本还想作下详情页的,因为接口的详情是H5 ,貌似微信小程序不能直接加载H5,若有知道的朋友也能够给我留言告诉我,本人对于H5也是一窍不通😄。
本文为Bison原创,转载请注明出处,不然将追究法律责任