iis服务器助手广告广告
返回顶部
首页 > 资讯 > 移动开发 >小程序赖加载刷新数据页面数据堆叠问题debug
  • 792
分享到

小程序赖加载刷新数据页面数据堆叠问题debug

小程序 2023-09-15 12:09:25 792人浏览 薄情痞子
摘要

  目录 项目所需 原生写赖加载存在的bug 解决问题思路及代码实现 思路: 代码实现: 列表.wxml  列表.js Wenjain_shanchu.js Wenjain_shanchu.json Wenjain_shanchu.wxml

 

目录

项目所需

原生写赖加载存在的bug

解决问题思路及代码实现

思路:

代码实现:

列表.wxml

 列表.js

Wenjain_shanchu.js

Wenjain_shanchu.json

Wenjain_shanchu.wxml

shouye.js

 ⭐️ 好书推荐

【内容简介】 


项目所需

某高校大一新生入学,学校的综合服务站小程序上传文件的列表支撑前端页面支撑不了成千上万条的渲染。

所以,决定将直接列表加载换成赖加载。

原生写赖加载存在的bug

使用原生来创建一个赖加载是不错的选择,但是遇到了一个问题,就是小程序的onshow和onload生命周期钩子,无论使用哪一个钩子都会存在数据刷新之后数据堆叠的问题。

解决问题思路及代码实现

思路:

我们使用懒加载时,一般会套用者数据的增删改查一起使用,比如:使用赖加载列数据之后,想实现每一条数据的删除之后刷新数据,这个时候就不能够使用正常的onshow或者onload生命钩子实现。

我们这时候要使用列表页面点击删除时跳到二级页面实现删除数据的同时,在二级页面使用getCurrentPages()函数获取到小程序页面栈,然后通过pages.length来获取上一个页面的实力对象,在通过beforePage方法修改上一个页面的数据,并结合着beforePage方法调用上一个页面的自定义方法,在使用正常的wx.navigateBack返回上一个父级页面并携带一个自定义的参数,这时候需要在父级页面上创建对话框事件,实现返回到此父级页面的上一个页面,然后再从此父级页面的上一个页面的onload生命钩子函数中做判断,如果孙页面的参数存在且判断正确,则自动执行跳到列表页面,从而解决赖加载结合数据的增删改查之后的数据在列表页面的堆叠问题!

代码实现:

列表.wxml

赖加载时候的数据删除

这里的item里面的_id是js中赖加载完成的数据列表

ain_shanchu/Wenjain_shanchu?Wenjain_shanchu_id={{item._id}}" slot="right">删除

 列表.js

  onShow() {    if (this.data.txt == 1) {      wx.showModal({        title: '删除成功!',        content: '是否自动重新进入此页面完成刷新!',        success(res) {          if (res.confirm) {            console.log('用户点击确定')            wx.reLaunch({              url: '../shouye/shouye?wenjian='+'yonghu',            })          } else if (res.cancel) {            console.log('用户点击取消')          }        }      })    }  },

Wenjain_shanchu.js

  Queding(){    let that = this    wx.cloud.database().collection('wenjian').doc(that.options.Wenjain_shanchu_id).remove({        success(res){            console.log(res)            wx.showToast({              title: '删除成功!',            })            let pages = getCurrentPages();   //获取小程序页面栈            let beforePage = pages[pages.length -2];  //获取上个页面的实例对象            beforePage.setData({      //直接修改上个页面的数据(可通过这种方式直接传递参数)              txt:1            })            beforePage.go_update();   //触发上个页面自定义的go_update方法            wx.navigateBack({         //返回上一页                delta:1            })        }    })  },  onLoad(options) {    console.log(options.Wenjain_shanchu_id)    Dialog.confirm({      title: "再次确定您是否要删除",      message:'\n\n',      customStyle:'width:500rpx;border-radius: 20rpx;padding:20px;display: flex;flex-direction: column;font-size:20px',      // theme:'round-button',     }).then(() => {      // on close     });      },

Wenjain_shanchu.JSON

{  "usinGComponents": {    "van-dialog": "@vant/weapp/dialog/index"  }}

Wenjain_shanchu.wxml

shouye.js

  onLoad(options) {    console.log(options,'111')    if(options.wenjian == 'yonghu'){      wx.navigateTo({        url: '../My_wenjain/My_wenjain',      })    }  },

 ⭐️ 好书推荐

清华社【秋日阅读企划】领券立享优惠

IT好书 5折叠加10元 无门槛优惠券:https://u.jd.com/Yqsd9wj

活动时间:9月4日-9月17日,先到先得,快快来抢

【内容简介】 

 《vue.js入门到精通》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Vue.js进行程序开发需要掌握的各方面技术。全书分为4篇,共19章,内容包括初识Vue.js、ECMAScript 6语法介绍、Vue实例与数据绑定、条件判断指令、v-for指令、计算属性和监听属性、元素样式绑定、事件处理、表单元素绑定、自定义指令、组件、组合api、过渡和动画效果、渲染函数、使用Vue Router实现路由、使用axiOS实现ajax请求、Vue CLI、状态管理,以及51购商城项目实战。书中的大多数知识点都结合具体实例进行介绍,涉及的程序代码给出了详细的注释,使读者可轻松领会Vue.js程序开发的精髓,快速提高开发技能。

📚 京东购买链接:https://item.jd.com/14055952.html

来源地址:https://blog.csdn.net/lbcyllqj/article/details/132847382

--结束END--

本文标题: 小程序赖加载刷新数据页面数据堆叠问题debug

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 小程序赖加载刷新数据页面数据堆叠问题debug
      目录 项目所需 原生写赖加载存在的bug 解决问题思路及代码实现 思路: 代码实现: 列表.wxml  列表.js Wenjain_shanchu.js Wenjain_shanchu.json Wenjain_shanchu.wxml...
    99+
    2023-09-15
    小程序
  • vue数据变化但页面刷新问题
    目录vue数据变化但页面刷新watch监听到数据的变化但页面没有刷新没有监听到数据的变化改变了数据却没有自动刷新说下结论vue数据变化但页面刷新 watch监听到数据的变化但页面没有...
    99+
    2024-04-02
  • vue3.0Reactive数据更新页面没有刷新的问题
    目录vue3.0 Reactive数据更新页面没有刷新vue3.0中的reactive用法在 reactive 使用基本类型参数响应式代理 vs. 原始对象总结vue3.0 Reac...
    99+
    2023-05-16
    vue3.0 Reactive vue3 Reactive数据更新 Reactive数据更新页面刷新
  • vuex结合session存储数据解决页面刷新数据丢失问题
    目录前言一、原因:二、解决思路:1.本地存储方法:2.实现步骤:3.优化:前言 在项目中表单筛选项里,选择完之后刷新页面数据就变了,没有保留在自己选择的选项上。 在项目中是使用vue...
    99+
    2024-04-02
  • 如何解决页面刷新vuex数据消失的问题
    这篇文章主要为大家展示了“如何解决页面刷新vuex数据消失的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决页面刷新vuex数据消失的问题”这篇文章吧...
    99+
    2024-04-02
  • vue数据变化但页面刷新问题怎么解决
    今天小编给大家分享一下vue数据变化但页面刷新问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。vue数据变化但页面...
    99+
    2023-06-30
  • 解决vue页面刷新vuex中state数据丢失的问题
    页面刷新后,原有的 vuex 中的 state 会发生改变,如果在页面刷新之前,可以将 state 信息保存,页面重新加载时,再将该值赋给 state,那么该问题即可解决。 1、lo...
    99+
    2024-04-02
  • vuex页面刷新数据丢失问题的四种解决方式
    目录为什么说刷新页面vuex的数据会丢失第一种方法用sessionStorage第二种方法是 vuex-along示例如下第三种方法是 vuex-persistedstate示例如下...
    99+
    2024-04-02
  • 如何解决刷新页面vuex数据不消失和不跳转页面的问题
    小编给大家分享一下如何解决刷新页面vuex数据不消失和不跳转页面的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!先说点什么v...
    99+
    2024-04-02
  • 微信小程序云开发实现分页刷新获取数据
    本文实例为大家分享了微信小程序云开发分页刷新获取数据的具体代码,供大家参考,具体内容如下 利用云函数调用数据库,在云函数中分页调取数据。再在js中不断将新的数据拼接到旧数据中,在前端...
    99+
    2024-04-02
  • 如何解决vue路由变化页面数据不刷新的问题
    这篇文章给大家分享的是有关如何解决vue路由变化页面数据不刷新的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。每天记录一点点,把我遇到的问题记录下来, 希望可以帮助到更多和我...
    99+
    2024-04-02
  • 关于微信小程序使用echarts/数据刷新重新渲染/图层遮挡问题
    1、微信小程序使用echarts,首先下载echarts并导入小程序项目中,因小程序后期上线对文件大小有要求,所以建议进行定制下载导入可减少文件大小占比,也可以下载以前旧版本文件比较...
    99+
    2024-04-02
  • 微信小程序如何实现页面滑动屏幕加载数据效果
    小编给大家分享一下微信小程序如何实现页面滑动屏幕加载数据效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!我们先看看效果图:创建...
    99+
    2024-04-02
  • Vue怎么解决router传递params参数在页面刷新时数据丢失问题
    本文小编为大家详细介绍“Vue怎么解决router传递params参数在页面刷新时数据丢失问题”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue怎么解决router传递params参数在页面刷新时数据丢...
    99+
    2024-04-02
  • vue项目刷新当前页面的三种方式(重载当前页面数据)
    目录vue项目刷新当前页面的三种方式(重载当前页面数据)一、this.$router.go(0)二、location.reload()三、用provide / inject 组合PS...
    99+
    2023-01-17
    vue刷新当前页面 vue重载当前页面数据
  • 微信小程序动态如何加载数据
    小编给大家分享一下微信小程序动态如何加载数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!微信小程序刚出来有很多的东西还在更新,...
    99+
    2024-04-02
  • 微信小程序页面如何获取数据
    微信小程序页面获取数据的案例:获取page数据,代码:var text=this.data.name ,这样就获取到初始化的值。page({data:{name:"test"},showData:function(){v...
    99+
    2024-04-02
  • 如何解决IE11 vue+webpack项目中数据更新后页面没有刷新的问题
    这篇文章主要介绍如何解决IE11 vue+webpack项目中数据更新后页面没有刷新的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!vue +webpack 项目中数据更新后页面...
    99+
    2024-04-02
  • JS中如何使用localStorage防止页面动态添加数据刷新后数据丢失
    这篇文章主要为大家展示了“JS中如何使用localStorage防止页面动态添加数据刷新后数据丢失”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JS中如何使用l...
    99+
    2024-04-02
  • 如何使用sessionStorage解决vuex在页面刷新后数据被清除的问题
    这篇文章主要介绍如何使用sessionStorage解决vuex在页面刷新后数据被清除的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.原因2.解决方法localStorage...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作