当前位置: 首页 > wzjs >正文

广州免费建站哪里有网站建设宣传 mp4

广州免费建站哪里有,网站建设宣传 mp4,无锡网页制作报价,福州关键词seo目录 前言1. 变量(不生效)2. 延迟(生效) 前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 在 Uniapp 中,使用 onShow() 钩子来监听页面显示&#xff0…

目录

  • 前言
  • 1. 变量(不生效)
  • 2. 延迟(生效)

前言

🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF

在 Uniapp 中,使用 onShow() 钩子来监听页面显示,从而在页面返回时刷新数据

例如:

onShow() {this.getLastSubmission(); // 重新请求数据
}

但这样会导致 初次进入页面 时 onShow() 也会执行一次 getLastSubmission(),而 onLoad() 也会调用它,导致 多次请求,带来性能问题和不必要的 API 调用

初次进入时 只调用一次 getLastSubmission(),返回页面时也只会调用 getLastSubmission() 以刷新数据
避免 onShow 和 onLoad 同时触发 getLastSubmission()

在 Uniapp 的页面生命周期中:

  • onLoad() 仅在页面首次创建时调用一次。
  • onShow() 每次页面 显示 时都会触发,包括:
    首次进入页面
    从其他页面返回

如果 onLoad() 和 onShow() 都调用 getLastSubmission(),那么:
初次进入:onLoad() 调用 getLastSubmission(),然后 onShow() 立即执行,导致 请求了两次
返回页面:onShow() 再次调用 getLastSubmission(),符合预期

需要解决 初次进入时调用两次的问题

在这里插入图片描述

1. 变量(不生效)

定义 firstLoad 变量,初次进入页面时设为 true。
onLoad() 执行 getLastSubmission(),但 onShow() 第一次不执行。
onShow() 仅在 firstLoad = false 后执行,避免初次进入时的重复调用

export default {data() {return {lastSubmission: null, firstLoad: true // 标记是否是第一次进入};},onLoad() {this.getLastSubmission(); // 初次加载时调用},onShow() {if (!this.firstLoad) {this.getLastSubmission(); // 仅在返回时调用} else {this.firstLoad = false; // 标记为已加载,后续 onShow 可执行}},methods: {async getLastSubmission() {try {const res = await getSelf();if (res?.data) {this.lastSubmission = res.data;} else {this.lastSubmission = null;}} catch (error) {this.lastSubmission = null;}}}
};

2. 延迟(生效)

核心思路:

在 onLoad() 先调用 getLastSubmission(),但不立即设置 loaded = true.通过 setTimeout() 稍微延迟 loaded,确保 onShow() 触发时不会误调用

export default {data() {return {lastSubmission: null, loaded: false // 标记是否已经加载过};},onLoad() {this.getLastSubmission().then(() => {setTimeout(() => {this.loaded = true; // 延迟标记 loaded,防止 onShow 立即执行}, 100); });},onShow() {if (this.loaded) {this.getLastSubmission(); }},methods: {async getLastSubmission() {try {const res = await getSelf();if (res?.data) {this.lastSubmission = res.data;} else {this.lastSubmission = null;}} catch (error) {this.lastSubmission = null;}}}
};

初次进入:
onLoad() 调用 getLastSubmission(),但 loaded 需要 100ms 才变 true。onShow() 立即触发,但 loaded = false,不会调用 getLastSubmission()

返回页面:
onShow() 触发 getLastSubmission(),刷新数据


文章转载自:

http://mEZxpNsj.mdjtk.cn
http://ov1qxWzY.mdjtk.cn
http://FUJSP3zt.mdjtk.cn
http://JcZefHaP.mdjtk.cn
http://dE7jAIav.mdjtk.cn
http://qkwk4Et8.mdjtk.cn
http://qnTnUX8A.mdjtk.cn
http://UpUEA7LZ.mdjtk.cn
http://DI29sDkT.mdjtk.cn
http://R03nd91t.mdjtk.cn
http://LaU77mdQ.mdjtk.cn
http://GlyOSzoD.mdjtk.cn
http://zsEFA4Fp.mdjtk.cn
http://ATOGDrhW.mdjtk.cn
http://ZsYr0x8M.mdjtk.cn
http://y9xcAfqI.mdjtk.cn
http://IsCyOnrM.mdjtk.cn
http://uDAG0Cy4.mdjtk.cn
http://jIgiKsZL.mdjtk.cn
http://nu9LRd1G.mdjtk.cn
http://EWUrWgYB.mdjtk.cn
http://8OetQw7G.mdjtk.cn
http://2D3hck5G.mdjtk.cn
http://Ii82E9yR.mdjtk.cn
http://uFX16cwY.mdjtk.cn
http://Ok3WcMo3.mdjtk.cn
http://0VsjNUGp.mdjtk.cn
http://vvrRctth.mdjtk.cn
http://LYb4w2b4.mdjtk.cn
http://kNcYS5gH.mdjtk.cn
http://www.dtcms.com/wzjs/715902.html

相关文章:

  • 网站建设备案审核要多久十大免费行情软件入口下载
  • 电子政务 和网站建设总结wordpress删除菜单
  • 重庆优化网站全网热搜榜
  • 湖南建设部网站网站制作方案垂直领域获客
  • 一家做特卖的网站手机版wordpress 内存使用教程
  • 唐山网站建设报价网站做app安全吗
  • 大型网站流量上海进一步优化
  • 电子商务网站的特色wordpress设置登陆口
  • 做标签网站是干嘛的高校服务地方专题网站建设
  • 在百度怎么建自己的网站网站的类型有哪几种
  • 大学生网站制作作业免费下载东营招标信息网
  • 企业建站的费用广州网页设计美工培训
  • 宁波网站备案幕布拍照手机网站 jquery 特效
  • 泉州网站建设qzdzi负面信息搜索引擎 网站
  • 赣州网站建设设计pc端网站怎么做自适应
  • 化工外贸网站建设中山网直播
  • 外贸品牌网站设计东莞网站建设实例分析
  • 个人商城网站能备案吗上传网站内容
  • 建设母婴网站的目的商务型网站建设
  • 天猫网站设计分析做动画网站去哪采集
  • 免费做房产网站有哪些用软件做的网站权限管理
  • 锦州做网站的个人江阴公司企业网站建设
  • 有哪些程序网站河北邢台路桥建设公司网站
  • 什么网站做推广wordpress主题失败
  • 网站设计的收费重庆企业网络推广网站
  • 网站响应式是什么意思好的建站网站
  • 企业网站制作规划wordpress添加js
  • 湖南省住房和城乡建设网站如何做好网站建设的关键重点
  • dw怎么做网站的导航栏梁山做网站的公司
  • 北京南站在哪个街道公众号排版