加载列表页数据
关键代码
app.js
~~~
App({
onLaunch: function() {
}
globalData: {
doubanBase:"https://douban.uieee.com/v2"
}
})
~~~
movie.js
~~~
// pages/movie.js
var app = getApp();
Page({
data:{
inTheaters:{},
comingSoon:{},
top250:{}
},
onLoad(){
var douban = app.globalData.doubanBase;
var count = "?start=0&count=3"
var inTheaterUrl = douban+"/movie/in_theaters"+count;
var comingSoonUrl = douban+"/movie/coming_soon"+count;
var top250Url = douban+"/movie/top250"+count;
this.getMovieListData(inTheaterUrl,"inTheaters");
this.getMovieListData(comingSoonUrl,"comingSoon");
this.getMovieListData(top250Url,"top250");
},
getMovieListData(url,setKey){
var self = this;
wx.request({
url,
header: {
'Content-Type': 'json'
},
success: function(res) {
self.processData(res.data,setKey);
},
fail: function(error) {
console.log(error)
}
})
},
processData(moviesDouban,setKey){
var movies = [];
for(var index in moviesDouban.subjects){
var top = moviesDouban.title;
console.log(top)
var subject = moviesDouban.subjects[index];
var title = subject.title;
if(title.length>=6){
title =title.substring(0,6)+"...";
}
var temp = {
title,
average:subject.rating.average,
coverageUrl:subject.images.large,
movieId:subject.id
}
movies.push(temp)
}
var readyData = {};
readyData[setKey] = {
movies:movies,
top
}
this.setData(readyData);
console.log(this.data.inTheaters)
}
})
~~~
[代码地址](https://gitee.com/chengbenchao/small_program/tree/master/mooc%E9%A1%B5%E9%9D%A2/15%E5%8A%A0%E8%BD%BD%E5%88%97%E8%A1%A8%E9%A1%B5%E6%95%B0%E6%8D%AE)
- 0.豆瓣接口文档
- 1.开发环境配置
- 2.hello world
- 3.wxml语法
- 第一节 数据绑定
- 第二节 列表渲染
- 第三节 条件渲染
- 第四节 模板引用
- 第五节 事件
- 第6节 轮播
- 第7节 skill
- 第8节 小程序接口调用
- 第9节 获取自定义的属性值
- 4.wxs
- 5.小程序的运行机制及框架
- 6.生命周期
- 7.小程序api
- 第1节 调用缓存
- 第2节 弹出框
- 第3节 模态框
- 第4节 分享showActionSheet
- 第5节 音乐播放
- 第6节 定义全局的数据
- 第7节 target
- 第8节 previewImage
- 第9节 用户授权-获取用户信息
- 第10节 判断用户是否授权
- 8.组件
- 第1节 toolbar的配置
- 第2节 动态设置导航
- 第3节 数据加载loading
- 第4节 下拉刷新
- 第5节 地图
- 第6节 component
- 第7节 scroll-view
- 第8节 form搜索
- 第9节 自定义事件的激活与监听
- 第10节 自定义组件
- 1.属性值改变时会触发observer函数
- 2.组件的behaviors属性可以将组件公共部部分抽离
- 第11节 slot
- 12 向组件传递外部样式
- 13wxs
- 1.写在wxml中的wxs
- 第14open-data
- 第15节 自定义button-slot实现授权组件
- 实例
- B.项目实战
- 第一章 发送http请求
- 第1节 豆瓣调用限定数据的数据
- 第二章 可用的豆瓣接口
- 第三章 处理豆瓣列表页的数据
- 第四章 电影更多页面的数据加载
- 9.skill
- 第一节 e6解决this指向
- 第二节 使用class封装一个简单的http
- 第1点 封装一个带错误的http
- 第2点 使用models再次封装http
- 第三节 http状态码
- 第四节 回调函数
- 第五节 小程序组件wx:if会触发detached,hidden不会
- 第六节 使用promise封装http
- 1.使用models再次封装http
- 第七节 增加历史数据到缓存中
- 第八节 Page向子组件传递上拉下拉
- 第九节 async,await语法支持