uni-app写的微信小程序每次换账号登录时出现缓存上一个账号数据的问题

uni-app写的微信小程序每次更换另外账号登录时出现缓存上一个账号数据的问题?

1,   清除缓存数据:在 onShow 钩子中,我们将 powerStationslist 和 responseRoles 的值重置为初始状态,以清除之前的缓存数据。

2,重新获取数据:在 onShow 钩子中调用 fetchDatafetchPowerStationData 和 tenantuSrank 函数,确保每次进入页面时都会重新获取最新的数据。

  1. <template><view class="stati_q"><view class="stati_a"><view class="stati_z"><view v-if="responseRoles.includes('sitemanage')" class="stati_nhy"><view class="stati_nqw" :class="{ 'highlight': selectedTab === '用电统计' }"@click="selectedTab = '用电统计'">用电统计</view><view class="stati_nqw" :class="{ 'highlight': selectedTab === '光伏发电统计' }"@click="selectedTab = '光伏发电统计'">光伏发电统计</view></view><view v-if="responseRoles.includes('electricCollection')" class="stati_nhy"><view class="stati_nqw" :class="{ 'highlight': selectedTab === '用电统计' }"@click="selectedTab = '用电统计'">用电统计</view></view><view v-if="responseRoles.includes('operation')" class="stati_nhy"><view class="stati_nqw" :class="{ 'highlight': selectedTab === '用电统计' }"@click="selectedTab = '用电统计'">用电统计</view><view class="stati_nqw" :class="{ 'highlight': selectedTab === '光伏发电统计' }"@click="selectedTab = '光伏发电统计'">光伏发电统计</view></view><view class="stati_w" v-if="selectedTab === '用电统计'"><Yongdian></Yongdian></view><view class="stati_w" v-else-if="selectedTab === '光伏发电统计'"><Fadian></Fadian></view></view></view><view class="stati_d"><view class="stati_c"><view class="stati_r">当日用电及碳排放排名</view><view class="stati_f" v-if="responseRoles.includes('sitemanage')"><view v-for="item in sortedPowerStations" :key="item.siteName" class="stati_v"><view class="stati_t"><img :src="'http://47.104.232.49/dev-api' + item.siteImgUrl" alt="" class="stati_g" /><view>{{ item.siteName }}</view></view><view class="stati_li"><text>{{ item.usePowerCount }}</text> kwh</view><view class="stati_li"><text>{{ item.carbonEmission }}</text> 吨</view></view></view><view class="stati_f" v-if="responseRoles.includes('operation')"><view v-for="item in sortedPowerStations" :key="item.siteName" class="stati_v"><view class="stati_li"><text>{{ item.usePowerCount }}</text> kwh</view><view class="stati_li"><text>{{ item.carbonEmission }}</text> 吨</view></view></view><view class="stati_f" v-if="responseRoles.includes('electricCollection')"><view v-for="item in list" :key="item.deviceName" class="stati_v"><view class="stati_t"><view class="stati_g"></view><view>{{ item.deviceName }}</view></view><view class="stati_li"><text>{{ item.usePowerCount }}</text> kwh</view><view class="stati_li"><text>{{ item.carbonEmission }}</text> 吨</view></view></view></view></view></view>
    </template>
    <script setup lang="ts">import { ref, computed, onMounted } from 'vue';import { onShow } from '@dcloudio/uni-app';import Yongdian from '../yongdian/yongdian.vue';import Fadian from '../fadian/fadian.vue';import { appgetInfo, siteusepowercountrank, tenantusrank } from '@/src/api/api.js';const selectedTab = ref('用电统计');const powerStations = ref([]);const list = ref([]);const responseRoles = ref<string[]>([]); // 新增变量用于存储response.rolesconst sortedPowerStations = computed(() => {return powerStations.value.slice().sort((a, b) => b.usePowerCount - a.usePowerCount);});// 获取电站排名数据const fetchPowerStationData = async () => {try {const response = await siteusepowercountrank();powerStations.value = response.data;} catch (error) {console.error(error);}};const tenantuSrank = async () => {try {const response = await tenantusrank();list.value = response.data;} catch (error) {console.error(error);}};const fetchData = () => {appgetInfo().then(response => {responseRoles.value = response.roles;}).catch(error => {console.error("获取工单失败", error);});};onMounted(() => {fetchData();fetchPowerStationData();tenantuSrank();});onShow(() => {// 清除缓存数据powerStations.value = [];list.value = [];responseRoles.value = [];// 重新获取数据fetchData();fetchPowerStationData();tenantuSrank();});
    </script>
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/61704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

初始Python篇(9)—— 函数

找往期文章包括但不限于本期文章中不懂的知识点&#xff1a; 个人主页&#xff1a;我要学编程(ಥ_ಥ)-CSDN博客 所属专栏&#xff1a; Python 目录 函数的定义及调用 函数的概念 函数的定义 函数的调用 水仙花数等自幂数的练习 函数相关参数的概念 函数的返回值 变…

【题解】—— LeetCode一周小结48

&#x1f31f;欢迎来到 我的博客 —— 探索技术的无限可能&#xff01; &#x1f31f;博客的简介&#xff08;文章目录&#xff09; 【题解】—— 每日一道题目栏 上接&#xff1a;【题解】—— LeetCode一周小结47 25.网络延迟时间 题目链接&#xff1a;743. 网络延迟时间 …

RK3568国产处理器 + TensorFlow框架的张量创建实验案例分享

一、实验目的 本节视频的目的是了解张量定义、了解张量的表示形式、并学习基于TensorFlow框架的张量创建方法。 二、实验原理. 张量定义 1、张量是多维数组&#xff0c;这个定义常见于各种人工智能软件。 2、张量是某种几何对象&#xff0c;不会随着坐标系的改变而改变。 3…

SpringMVC:SpringMVC的bean加载机制

问题分析 入门案例的内容已经做完了&#xff0c;在入门案例中我们创建过一个SpringMvcConfig的配置类&#xff0c;再回想前面咱们学习Spring的时候也创建过一个配置类SpringConfig。这两个配置类都需要加载资源&#xff0c;那么它们分别都需要加载哪些内容? 我们先来看下目前…

张伟楠动手学强化学习笔记|第一讲(上)

张伟楠动手学强化学习笔记|第一讲&#xff08;上&#xff09; 人工智能的两种任务类型 预测型任务 有监督学习无监督学习 决策型任务 强化学习 序贯决策(Sequential Decision Making) 智能体序贯地做出一个个决策&#xff0c;并接续看到新的观测&#xff0c;知道最终任务结…

Navicat连接SQL Server

Navicat连接SQL Server 安装自带的SQL Server客户端 去到Navicat安装目录&#xff0c;找到安装程序&#xff0c;安装即可。 安装对应版本的Microsoft ODBC Driver for SQL Server 打开Navicat输入对应的SQL Server相关信息 然后点测试连接&#xff0c;提示连接成功。

子模块、Fork、NPM 包与脚手架概述

子模块 在 Git 仓库中嵌套另一个仓库&#xff0c;通过引用的方式引入到主项目&#xff0c;版本管理依赖 Git 提交记录或分支&#xff0c;更新需手动拉取并提交&#xff0c;适用于共享代码并保持项目独立性。 优点&#xff1a;子模块支持直接查看和修改&#xff0c;保持子模块…

将一个数组逆序输出。-多语言

目录 C 语言实现 方法 1: 交换元素 方法 2: 使用辅助数组 方法 3: 使用递归 方法 4: 使用标准库函数&#xff08;C99及以上&#xff09; 总结 Python 实现 方法 1: 交换元素 方法 2: 使用切片 方法 3: 使用 reversed() 函数 方法 4: 使用 list.reverse() 方法 方法…

传智杯 A字符串拼接

链接&#xff1a;登录—专业IT笔试面试备考平台_牛客网 来源&#xff1a;牛客网 题目描述 键盘输入两个字符串&#xff0c;将这两个字符串进行拼接后输出。 输入描述: 键盘输入两个字符串 输出描述: 输出两个字符串拼接后的结果 示例1 输入 hello nihao 输出 helloni…

js高级-ajax封装和跨域

ajax简介及相关知识 原生ajax AJAX 简介 AJAX 全称为 Asynchronous JavaScript And XML&#xff0c;就是异步的 JS 和 XML。 通过 AJAX 可以在浏览器中向服务器发送异步请求&#xff0c;最大的优势&#xff1a;无刷新获取数据。 按需请求&#xff0c;可以提高网站的性能 AJ…

WEB开发: 丢掉包袱,拥抱ASP.NET CORE!

今天的 Web 开发可以说进入了一个全新的时代&#xff0c;前后端分离、云原生、微服务等等一系列现代技术架构应运而生。在这个背景下&#xff0c;作为开发者&#xff0c;你一定希望找到一个高效、灵活、易于扩展且具有良好性能的框架。那么&#xff0c;ASP.NET Core 显然是一个…

D82【python 接口自动化学习】- pytest基础用法

day82 pytest初体验 学习日期&#xff1a;20241128 学习目标&#xff1a;pytest基础用法 -- pytest初体验 学习笔记&#xff1a; 文件命名规范 py测试文件必须以test_开头&#xff08;或_test结尾&#xff09;测试方法必须以test开头测试类必须以Test开头&#xff0c;并且…

前端面试热门题(二)[html\css\js\node\vue)

Vue 性能优化的方法 Vue 性能优化的方法多种多样&#xff0c;以下是一些常用的策略&#xff1a; 使用v-show替换v-if&#xff1a;v-show是通过CSS控制元素的显示与隐藏&#xff0c;而v-if是通过操作DOM来控制元素的显示与隐藏&#xff0c;频繁操作DOM会导致性能下降。因此&am…

HarmonyOS4+NEXT星河版入门与项目实战(23)------实现手机游戏摇杆功能

文章目录 1、案例效果2、案例实现1、代码实现2、代码解释4、总结1、案例效果 2、案例实现 1、代码实现 代码如下(示例): import router from @ohos.router import {ResizeDirection } from @ohos.UiTest import curves

MySQL--视图

目录 1 认识视图 1.1 视图的定义 1.1 创建视图 1.2 查询 1.3 修改 1.4 删除 1.5 视图的优缺点 1.5.1 优点 1.5.2 缺点 1.6 视图的类型 1.7 视图与物化视图 2 视图检查选项 2.1 CASCADED 2.2 LOCAL 3 视图更新及作用 3.1 视图案列结合 3.1.1 屏蔽敏感数据 3.1…

【工具】JS解析XML并且转为json对象

【工具】JS解析XML并且转为json对象 <?xml version1.0 encodingGB2312?> <root><head><transcode>hhhhhhh</transcode></head><body><param>ccccccc</param><param>aaaaaaa</param><param>qqqq<…

全球气候变化驱动因素预测,Python机器学习与深度学习

全球气候变化是现代社会面临的最重要的环境挑战之一&#xff0c;影响了气温、降水、海平面、生态系统等多个方面。气候变化的驱动因素主要包括温室气体排放、气溶胶浓度、火灾频发、海冰融化、叶绿素变化、植被变化和海洋温度上升等。这些因素在全球范围内交互作用&#xff0c;…

不同云计算网络安全等级

导读云计算的本质是服务&#xff0c;如果不能将计算资源规模化/大范围的进行共享&#xff0c;如果不能真正以服务的形式提供&#xff0c;就根本算不上云计算。 等级保护定级流程 定级是开展网络安全等级保护工作的 “基本出发点”&#xff0c;虚拟化技术使得传统的网络边界变…

账本模型

05-账本模型 1 账本模型 1.1 传统线性增长模型 传统的 MySQL 等系统采用线性增长的日志模型&#xff0c;通过一个 Leader 和多个 Follower 进行状态同步。这种方式有单点的带宽瓶颈问题。 1.2 区块链共享账本模型 共享账本&#xff1a;树形增长。在去中心化网络中&#xff0c;…

CPU、MPU、MCU和SOC学习笔记

CPU CPU是Central Processing Unit的缩写计算机的运算控制核心就是CPUCPU是由运算器、控制器和寄存器及相应的总线构成众所周知的三级流水线&#xff1a;取址、译码、执行的对象就是CPUCPU从存储器或高速缓冲存储器中取出指令&#xff0c;放入指令寄存器&#xff0c;并对指令译…