博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序实战–集阅读与电影于一体的小程序项目(七)
阅读量:6970 次
发布时间:2019-06-27

本文共 3015 字,大约阅读时间需要 10 分钟。

27.实现上滑加载更多数据

movie-grid-template.wxml

more-movie.js

var util = require('../../../utils/util.js')var app = getApp();Page({  data:{    categoryTitle: '',    movies: {},    requsetUrl: '',    isEmpty: true,    totalCount: 0  },  onLoad: function (options) {    .    .    .    this.data.requsetUrl = dataUrl;    util.http(dataUrl, this.processDoubanData)  },  processDoubanData:function(data){   .   .   .       var totalMovies = {}    if (!this.data.isEmpty) {      totalMovies = this.data.movies.concat(movies)    } else {      totalMovies = movies      this.data.isEmpty = false    }    this.setData({      movies: totalMovies    })    this.data.totalCount += 20;  },  onScrollLower:function(event){    var nextUrl = this.data.requsetUrl +     "?start=" + this.data.totalCount + "&count=20";    util.http(nextUrl,this.processDoubanData)  },

28.设置loading状态

more-movie.js

onScrollLower: function (event) {    var nextUrl = this.data.requsetUrl +      "?start=" + this.data.totalCount + "&count=20";    util.http(nextUrl, this.processDoubanData);    wx.showNavigationBarLoading()  },    processDoubanData:function(data){    .    .        this.setData({      movies: totalMovies    })    this.data.totalCount += 20;    wx.hideNavigationBarLoading()  },

29.实现下拉刷新

more-movie.json

{  "enablePullDownRefresh": true}

more-movie.js

onPullDownRefresh: function () {    var refreshUrl = this.data.requsetUrl +      "?star=0&count=20";    this.data.movies = {};    this.data.isEmpty = true;    this.data.totalCount = 0;    util.http(refreshUrl, this.processDoubanData);    wx.showNavigationBarLoading();  },  processDoubanData:function(data){    .    .    .    this.data.totalCount += 20;    wx.hideNavigationBarLoading()    wx.stopPullDownRefresh()  },

30.电影搜索功能实现

movies.wxml

..

movies.wxss

@import "movie-grid/movie-grid-template.wxss";.search {  background-color: #f2f2f2;  height: 80rpx;  width: 100%;  display: flex;  flex-direction: row;}.search-img {  margin: auto 0 auto 20rpx;}.search input {  height: 100%;  width: 600rpx;  margin-left: 20px;  font-size: 28rpx;}.placeholder {  font-size: 14px;  color: #d1d1d1;  margin-left: 20rpx;}.search-panel{    position:absolute;    top:80rpx;}.xx-img{    height: 30rpx;    width: 30rpx;    margin:auto 0 auto 10rpx;}

movies.js

Page({  data: {    inTheaters: {},    comingSoon: {},    top250: {},    searchResult: {},    containerShow: true,    searchPanelShow: false  },    onBindFocus: function (event) {    this.setData({      containerShow: false,      searchPanelShow: true    })  },  onCancelImgTap: function (event) {    this.setData({      containerShow: true,      searchPanelShow: false,      searchResult: {}    })  },    onBindBlur: function (event) {    var text = event.detail.value    var searchUrl = app.globalData.g_baseUrl + "/v2/movie/search?q=" + text;    this.getMovieList(searchUrl, "searchResult", "");  },

结果

61e7e36462f95d499b8bcc266ef0a820.png

转载地址:http://plasl.baihongyu.com/

你可能感兴趣的文章
谈恋爱与形象
查看>>
day22 Pythonpython 本文xml模块
查看>>
Fisher's exact test( 费希尔精确检验)
查看>>
SSH项目里面 忘记密码的邮件发送功能
查看>>
对Linux(Unix)的基础知识归纳
查看>>
自定义可扩展叠加头部的下拉控件
查看>>
转--Java工程师成神之路(2018修订版)
查看>>
SQLServer之Compute/ComputeBy实现数据汇总
查看>>
KMP算法
查看>>
回车提交
查看>>
代码基本素质
查看>>
关于数据库的索引
查看>>
Apache POI使用详解(摘抄)
查看>>
PAT_A1076#Forwards on Weibo
查看>>
黑马程序员博客-------面向对象
查看>>
Python 类 面向对象(Classes)
查看>>
如何完全卸载(Mac&Windows)office 365 ProPlus
查看>>
android实战开发02
查看>>
网络中的连接设备
查看>>
业务逻辑:完成基于CRM地址完全匹配的自动分单业务逻辑
查看>>