返回顶部
首页 > 资讯 > 前端开发 > VUE >微信小程序如何实现页面滑动屏幕加载数据效果
  • 188
分享到

微信小程序如何实现页面滑动屏幕加载数据效果

2024-04-02 19:04:59 188人浏览 八月长安
摘要

小编给大家分享一下微信小程序如何实现页面滑动屏幕加载数据效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!我们先看看效果图:创建

小编给大家分享一下微信小程序如何实现页面滑动屏幕加载数据效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

我们先看看效果图:

微信小程序如何实现页面滑动屏幕加载数据效果

创建目录

首先我们现在项目中创建资讯目录,以下是我自己创建的目录,大家可以根据自己的需求创建。如图所示:

微信小程序如何实现页面滑动屏幕加载数据效果

创建lists.js文件

以下是lists.js代码

var app = getApp()
Page({
 data: {
  newsList: [],
  lastid: 0,
  toastHidden: true,
  confirmHidden: true,
  isfrist: 1,
  loadHidden: true,
  moreHidden: 'none',
  msg: '没有更多文章了'
 },
 loadData: function (lastid) {
  //显示出加载中的提示
  this.setData({ loadHidden: false })
  var limit = 10
  var that = this
  wx.request({
   url: 'Http://127.0.0.1:9090/hpm_bill_WEB/news/getnewslist', //数据接口
   data: { lastid: lastid, limit: limit },
   header: {
    'Content-Type': 'application/JSON'
   },
   success: function (res) {
    if (!res.data) {
     that.setData({ toastHidden: false })
     that.setData({ moreHidden: 'none' })
     return false
    }
    var len = res.data.length
    var oldLastid = lastid
    if(len != 0) {
     that.setData({ lastid: res.data[len - 1].id })
    } else {
     that.setData({ toastHidden: false})
    }
    var dataArr = that.data.newsList
    var newData = dataArr.concat(res.data);
     if (oldLastid == 0) {
      wx.setStorageSync('CmsList', newData)
     }
    that.setData({ newsList: newData })
    that.setData({ moreHidden: '' })
   },
   fail: function (res) {
    if (lastid == 0) {
     var newData = wx.getStorageSync('CmsList')
     if(newData) {
      that.setData({ newsList: newData })
      that.setData({ moreHidden: '' })
      var len = newData.length
      if (len != 0) {
       that.setData({ lastid: newData[len - 1].id })
      } else {
       that.setData({ toastHidden: false })
      }
      console.log('data from cache');
     }
     } else {
      that.setData({ toastHidden: false, moreHidden: 'none', msg: '当前网格异常,请稍后再试' })
     }
   },
   complete: function () {
    //显示出加载中的提示
    that.setData({ loadHidden: true })
   }
  })
 },
 loadMore: function (event) {
  var id = event.currentTarget.dataset.lastid
  var isfrist = event.currentTarget.dataset.isfrist
  var that = this
  wx.getNetworkType({
   success: function (res) {
    var networkType = res.networkType // 返回网络类型2g,3g,4g,wifi
    if (networkType != 'wifi' && isfrist == '1') {
     that.setData({ confirmHidden: false })
    }
   }
  })
  this.setData({ isfrist: 0 })
  this.loadData(id);
 },
 onLoad: function () {
  var that = this
  this.loadData(0);
 },
 toastChange: function () {
  this.setData({ toastHidden: true })
 },
 modalChange: function () {
  this.setData({ confirmHidden: true })
 }
})

创建页面文件(lists.wxml)

<view class="warp">
 <!-- 文章列表模板 begin -->
 <template name="items">
  <navigator url="../../pages/detail/detail?id={{id}}" hover-class="navigator-hover">
   <view class="imgs">
    <image src="{{image}}" class="in-img" background-size="cover" model="scaleToFill"></image>
   </view>
   <view class="infos">
    <view class="title">{{name}}</view>
    <view class="dates">{{createtime}}</view>
   </view>
  </navigator>
 </template>
 <!-- 文章列表模板 end -->
 <!-- 循环输出列表 begin -->
 <view wx:for="{{newsList}}" class="list">
  <template is="items" data="{{...item}}" />
 </view>
 <!-- 循环输出列表 end -->
<loading hidden="{{loadHidden}}" bindchange="loadChange">
  数据加载中...
</loading>
 <view bindtap="loadMore" data-lastid="{{lastid}}" data-isfrist="{{isfrist}}" class="loadMore" >加载更多</view>
 <toast hidden="{{toastHidden}}" bindchange="toastChange" duration="3000">{{msg}}</toast>
 <modal title="温馨提示" no-cancel confirm-text="明确" cancel-text="关闭" hidden="{{confirmHidden}}" bindconfirm="modalChange" bindcancel="modalChange">你当前不在在WIFI网格下下,会产生流量费用</modal>
</view>

创建页面样式(lists.wxss)

.warp {height:100%;display:flex;flex-direction: column;padding:20rpx;}
navigator {overflow: hidden;}
.list {margin-bottom:20rpx;height:200rpx;position:relative;}
.imgs{float:left;}
.imgs image {display:block;width:200rpx;height:200rpx;}
.infos {float:left;width:480rpx;height:200rpx;padding:20rpx 0 0 20rpx}
.title {font-size:20px; font-family: Microsoft Yahei}
.dates {font-size:16px;color: #aaa; position: absolute;bottom:0;}
.loadMore {text-align: center; margin:30px;color:#aaa;font-size:16px;}

通过以上代码就能实现在屏幕上滑动显示数据的功能。

以上是“微信小程序如何实现页面滑动屏幕加载数据效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网VUE频道!

--结束END--

本文标题: 微信小程序如何实现页面滑动屏幕加载数据效果

本文链接: https://lsjlt.com/news/68718.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 微信小程序如何实现页面滑动屏幕加载数据效果
    小编给大家分享一下微信小程序如何实现页面滑动屏幕加载数据效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!我们先看看效果图:创建...
    99+
    2024-04-02
  • 微信小程序如何实现移动端滑动分页效果
    这篇文章主要介绍微信小程序如何实现移动端滑动分页效果,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一般在PC上我们要分页都是通过上一页和下一页来实现的,手机通过当下滑到一定程度的时候...
    99+
    2024-04-02
  • 使用微信小程序实现页面滑动特效
    使用微信小程序实现页面滑动特效随着微信小程序的不断发展,越来越多的开发者开始利用微信小程序开发出各种各样的实用应用。其中,页面滑动特效是一种非常常见且带有一定动感的效果。本文将介绍如何使用微信小程序实现页面滑动特效,并提供具体的代码示例。在...
    99+
    2023-11-21
    微信小程序 特效 页面滑动
  • 微信小程序如何实现页面滑动事件
    这篇文章给大家分享的是有关微信小程序如何实现页面滑动事件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。微信小程序——页面滑动事件wxml: <view ...
    99+
    2024-04-02
  • 微信小程序实现页面跳转动画效果
    微信小程序实现页面跳转动画效果在微信小程序中,页面跳转是一项非常常见的功能。为了提升用户体验,我们可以通过添加动画效果来让页面切换更加流畅和生动。下面我将介绍如何使用微信小程序的API来实现页面跳转动画效果,并附上具体的代码示例。首先,我们...
    99+
    2023-11-21
    动画效果 微信小程序 页面跳转
  • 微信小程序实现页面滚动监听效果
    抱歉,我无法提供具体代码示例。如果你想了解如何在微信小程序中实现页面滚动监听效果,可以通过以下步骤自己尝试:创建一个新的微信小程序项目。在 wxml 文件中编写页面结构,包括需要滚动监听的元素。在 wxss 文件中设置页面样式,包括滚动监听...
    99+
    2023-11-21
    页面滚动 微信小程序 监听效果
  • 微信小程序实现页面过渡动画效果
    微信小程序是一种基于微信平台的小型应用程序,它功能丰富、操作简便,是现代移动互联网时代不可或缺的一部分。小程序在开发过程中,页面过渡动画效果是提升用户体验的重要方法之一。在本文中,我们将介绍如何使用微信小程序实现页面过渡动画效果,并提供具体...
    99+
    2023-11-21
    微信 小程序 页面动画
  • 微信小程序使用onreachBottom实现页面触底加载及分页效果
    目录一 简要介绍一下onreachBottom事件二  实例展示三 遇到的一些问题总结一 简要介绍一下onreachBottom事件 onreachBottom和onLoa...
    99+
    2022-11-13
    小程序页面触底加载及分页显示 小程序分页加载 微信小程序触底加载
  • 微信小程序实现页面缓存效果
    抱歉,我不能在该平台上提供具体的代码示例。但是我可以给你一些关于微信小程序实现页面缓存的一般指导和步骤,希望能帮到你。微信小程序是一种轻量级的应用程序,它需要快速加载和响应用户操作。页面缓存是一种优化技术,可以加快页面加载速度,提升用户体验...
    99+
    2023-11-21
    页面 缓存 微信小程序
  • 微信小程序实现页面缩放效果
    微信小程序实现页面缩放效果随着微信小程序的快速发展,越来越多的开发者开始关注小程序的交互效果和用户体验。其中,页面缩放效果是一个常见的需求。本文将介绍如何使用微信小程序实现页面缩放效果,并提供具体的代码示例。首先,我们需要在小程序的页面配置...
    99+
    2023-11-21
    微信小程序 效果实现 页面缩放
  • 微信小程序动态如何加载数据
    小编给大家分享一下微信小程序动态如何加载数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!微信小程序刚出来有很多的东西还在更新,...
    99+
    2024-04-02
  • 微信小程序如何重新加载页面
    微信小程序有提供一个下拉刷新的功能,操作步骤如下:打开小程序。点击右上角的“···”。会弹出一些功能信息,选择“刷新”即可。...
    99+
    2024-04-02
  • 微信小程序如何加载分包页面
    小程序分包加载实例{"pages": ["pages/index", "pages/shopcart"],"subpackages":&nb...
    99+
    2024-04-02
  • 使用微信小程序实现滑动菜单效果
    使用微信小程序实现滑动菜单效果微信小程序作为一种快速开发并具有广泛应用的工具,为我们提供了多种实现滑动菜单效果的方法。本文将向您展示一种简单而实用的实现方式,帮助您在开发中轻松添加滑动菜单效果。准备工作在开始编码之前,我们需要先创建一个基本...
    99+
    2023-11-21
    微信小程序 实现 滑动菜单
  • 微信小程序实现tab页面切换效果
    本文实例为大家分享了微信小程序实现tab页面切换的具体代码,供大家参考,具体内容如下 html 页面 <view class="bgwhite">     <sc...
    99+
    2024-04-02
  • 如何实现微信小程序页面返回顶部效果
    这篇文章主要为大家展示了“如何实现微信小程序页面返回顶部效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现微信小程序页面返回顶部效果”这篇文章吧。效果预...
    99+
    2024-04-02
  • 微信小程序如何实现动画效果
    这篇文章主要为大家展示了“微信小程序如何实现动画效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“微信小程序如何实现动画效果”这篇文章吧。一、什么是微信小程序?...
    99+
    2024-04-02
  • 微信小程序如何设置页面不可滑动
    在微信小程序中设置页面不可滑动的方法首先,进入微信开发者工具,打开小程序文件目录;在文件目录中,依次查找到test/test.wxml文件,并使用记事本打开;test.wxml文件打开后,使用swiper-item标签包裹所有view;&l...
    99+
    2024-04-02
  • 微信小程序中如何实现左滑删除效果
    小编给大家分享一下微信小程序中如何实现左滑删除效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先看效果要实现的效果:1,当向左...
    99+
    2024-04-02
  • 微信小程序如何实现顶部导航栏滑动tab效果
    这篇文章将为大家详细讲解有关微信小程序如何实现顶部导航栏滑动tab效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。具体内容如下效果图:首先是滑动的效果:<scro...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作