vue3+antd——实现App.vue页面实时获取权限+用户信息的功能——基础积累

之前写过一篇文章关于vue3+antd的框架模板,链接如下:http://t.csdn.cn/9dZMS

1.App.vue代码

<template><ConfigProvider :locale="locale"><ThemeProvider is-root v-bind="themeConfig" :apply-style="false" :color="{ primary: { DEFAULT: '#f90' } }"><stepin-viewsystem-name=""logo-src="@/assets/logo.png":class="`${contentClass}`":user="user":navMode="navigation":useTabs="useTabs":themeList="themeList"v-model:show-setting="showSetting"v-model:theme="theme"@themeSelect="configTheme"><template #headerActions><HeaderActions @showSetting="showSetting = true" /></template></stepin-view></ThemeProvider></ConfigProvider>
</template>

2.js代码

<script lang="ts" setup>import { ConfigProvider } from 'ant-design-vue';import { reactive, ref, computed } from 'vue';import { useRouter } from 'vue-router';import { useAccountStore, useSettingStore, storeToRefs } from '@/store';import avatar from '@/assets/avatar.png';import { HeaderActions } from '@/components/layout';import { configTheme, themeList } from '@/theme';import { ThemeProvider } from 'stepin';const { logout, profile } = useAccountStore();import dayjs from 'dayjs';import 'dayjs/locale/zh-cn';import 'dayjs/locale/ar';import 'dayjs/locale/en';dayjs.locale('zh-cn');import zhCN from 'ant-design-vue/es/locale/zh_CN.js';const showSetting = ref(false);const router = useRouter();const locale = zhCN;// 获取个人信息profile((response, account) => {});let user = computed(() => {const { account } = storeToRefs(useAccountStore());return {name: account?.value?.name,avatar: account?.value?.headPhoto || avatar,menuList: [{ title: '个人中心', key: 'personal', icon: 'UserOutlined', onClick: () => router.push('/userInfo') },{ type: 'divider' },{title: '退出登录',key: 'logout',icon: 'LogoutOutlined',onClick: () =>logout().then(() => {router.replace('/login');}),},],};});const { navigation, useTabs, theme, contentClass } = storeToRefs(useSettingStore());const themeConfig = computed(() => themeList.find((item) => item.key === theme.value).config);
</script>

重要的代码如下:

  // 获取个人信息,只要是刷新整个系统,也就是刷新浏览器的时候,就会触发这个`profile`的方法来获取权限。import { useAccountStore, useSettingStore, storeToRefs } from '@/store';const { logout, profile } = useAccountStore();profile((response, account) => {});//为了实时获取用户信息,则需要通过这个`computed`计算属性来处理。let user = computed(() => {const { account } = storeToRefs(useAccountStore());return {name: account?.value?.name,avatar: account?.value?.headPhoto || avatar,menuList: [{ title: '个人中心', key: 'personal', icon: 'UserOutlined', onClick: () => router.push('/userInfo') },{ type: 'divider' },{title: '退出登录',key: 'logout',icon: 'LogoutOutlined',onClick: () =>logout().then(() => {router.replace('/login');}),},],};});

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

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

相关文章

【单片机】51单片机,晨启科技,板子引脚对应关系

一般引脚: sbit beepP2^4; //将单片机的P2.4端口定义为beep.本口用于屏蔽上电后蜂鸣器响 sbit ledP1^0; //将单片机的P1.0端口定义为led&#xff0c;用于点亮LED-D1 sbit DIG1P0^0; //数码管位选1 sbit DIG2P0^1; //数码管位选2P10xFF;//初始化P1引脚全部置高&a…

【第一阶段】kotlin的when表达式

1.Java 的if /when是语句 kotlin的if/when是表达式&#xff0c;表达式是有返回值的 java中void是个关键字&#xff0c;Unit在kotlin中是个类 2.当使用when语句的时候必须有一个不满足的值即else: fun main() {var week:Int5val info when(week){1->"今天是星期一"…

Transformer学习笔记

Transformer学习笔记 前言前提条件相关介绍Transformer总体架构编码器&#xff08;Encoder&#xff09;位置编码&#xff08;Positional Encoding&#xff09;get_attn_pad_mask函数&#xff08;Padding Mask&#xff09;EncoderLayerMultiHeadAttentionScaledDotProductAttent…

项目出bug,找不到bug,如何拉回之前的版本

1.用gitee如何拉取代码 本文为转载于「闪耀太阳a」的原创文章原文链接&#xff1a;https://blog.csdn.net/Gufang617/article/details/119929145 怎么从gitee上拉取代码 1.首先找到gitee上想要拉取得代码URL地址 点击复制这里的https地址 1 ps:&#xff08;另外一种方法&…

【React重点知识与代码案例】

React是当前最流行的JavaScript前端框架之一&#xff0c;以下是React重要的知识点和代码案例&#xff1a; 1.JSX语法&#xff1a;JSX是React用于描述UI的语法扩展&#xff0c;它允许在JavaScript代码中编写类HTML的代码。例如&#xff1a; const element <h1>Hello, wo…

xcode打包导出ipa

转载&#xff1a;xcode打包导出ipa 目录 转载&#xff1a;xcode打包导出ipa 第一步&#xff1a;注册苹果开发者账号 第二步&#xff1a;下载APP Uploader 第三步&#xff1a;使用xcode打包导出ipa文件&#xff0c;供其他人内测 众所周知&#xff0c;在开发苹果应用时需要使…

Leetcode31 下一个排列

解题思路&#xff1a; 算法过程的第二步&#xff0c;可以变为将[j,end]排序&#xff0c;然后从[j,end)和i进行比较&#xff0c;在区间j,end区间第一个大于nums[i]后&#xff0c;交换即可 public void nextPermutation(int[] nums) {int len nums.length - 1;for(int i len;i…

[SQL系列] 从头开始学PostgreSQL 分库分表

什么是分库分表 分库分表是一种数据库架构设计的方法&#xff0c;用于应对大规模数据的存储和查询。当单个数据库的存储容量或查询性能无法满足需求时&#xff0c;可以通过将数据分散存储在多个数据库服务器上&#xff0c;以提高系统的可扩展性和性能。 分库分表通常包…

【电机绘图】:插补算法(一)—直线插补—逐点比较法

今日介绍学习一种使用电机作画、绘图、加工零件时需要使用的算法 &#xff1a; 插补算法 本文提供直线插补的概念基础&#xff0c;基本思路分析&#xff0c;C语言实现等&#xff0c;代码会直接贴出&#xff01; 插补算法是指在数值计算或数据处理中&#xff0c;根据已有的数据…

单例模式(C++)

定义 保证一个类仅有一个实例&#xff0c;并提供一个该实例的全局访问点。 应用场景 在软件系统中&#xff0c;经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例&#xff0c;才能确保它们的逻辑正确性、以及良好的效率。如何绕过常规的构造器&#xff0c;提供一种…

智慧园区物流的资料--写标书参考

这是几个参考的 智慧物流园区信息平台建设规划方案 智慧物流园区信息化建设规划方案 - 百度文库 国家智慧物流园建设方案 国家智慧物流园建设方案 - 百度文库 智慧园区:建设实施方案 智慧园区建设实施方案 - 百度文库 智慧园区管理系统建设方案 智慧园区管理系统建设方案…

Babel编译与Webpack

目录 Babel初识BabelBabel 使用方式使用 Babel 前的准备工作 WebpackWebpack介绍Webpack初体验Webpack核心概念入口&#xff08;entry&#xff09;出口&#xff08;output&#xff09;加载 (loader)插件&#xff08;plugins&#xff09; Babel Babel官网: https://babeljs.io/…

【Hystrix技术指南】(6)请求合并机制原理分析

[每日一句] 也许你度过了很糟糕的一天&#xff0c;但这并不代表你会因此度过糟糕的一生。 [背景介绍] 分布式系统的规模和复杂度不断增加&#xff0c;随着而来的是对分布式系统可用性的要求越来越高。在各种高可用设计模式中&#xff0c;【熔断、隔离、降级、限流】是经常被使…

小白到运维工程师自学之路 第六十四集 (dockerfile构建tomcat、mysql、lnmp、redis镜像)

一、tomcat&#xff08;更换jdk&#xff09; mkdir tomcat cd tomcat/ tar xf jdk-8u191-linux-x64.tar.gz tar xf apache-tomcat-8.5.40.tar.gzvim Dockerfile FROM centos:7 MAINTAINER Crushlinux <syh163.com> ADD jdk1.8.0_191 /usr/local/java ENV JAVA_HOME /us…

国内大模型在局部能力上已超ChatGPT

中文大模型正在后来居上&#xff0c;也必须后来居上。 数科星球原创 作者丨苑晶 编辑丨大兔 从GPT3.5彻底出圈后&#xff0c;大模型的影响力开始蜚声国际。一段时间内&#xff0c;国内科技公司可谓被ChatGPT按在地上打&#xff0c;毫无还手之力。 彼时&#xff0c;很多企业…

怎么快速搭建BI?奥威BI系统做出了表率

搭建BI系统有两大关键&#xff0c;分别是环境搭建和数仓建设。这两点不管是哪一个都相当地费时费力&#xff0c;那要怎么才能快速搭建BI平台&#xff0c;顺利实现全企业数字化运营决策&#xff1f;奥威BI系统方案&#xff0c;你值得拥有&#xff01; 奥威BI系统方案&#xff0…

三种方法实现tab栏切换(CSS方法、JS方法、Vue方法)

一、需求 给下图的静态页面添加tab栏切换效果 二、CSS方法 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"v…

云知识库软件的推荐清单,你看看你喜欢哪一个?

在选择云知识库软件时&#xff0c;有很多因素需要考虑&#xff0c;如功能、易用性、可定制性、安全性、价格等。下面是一些我喜欢的云知识库软件推荐清单&#xff1a; Confluence&#xff1a; Confluence是一款由Atlassian开发的知识管理和协作工具。它提供了强大的编辑和协作…

Go微服务实践 - Rpc核心概念理解

概述 从0研究一下Golang已经Golang的微服务生态体系&#xff0c;Golang的微服务首先要从Rpc开始&#xff0c;在升级到Grpc&#xff0c;详细介绍这些技术点都在解决什么技术问题。 Rpc Rpc (Remote Procedure Call) 远程过程调用&#xff0c;简单的理解是一个节点请求另一个节…

纯笔记: 正则表达式篇

1. 0-100 之间的整数&#xff08;或小数&#xff09; 摘自 正则表达式0-100之前的整数或者小数 // 0-100之间的整数 或者小数&#xff08;可以输入0开头的数字&#xff0c;如01,02 &#xff09; /^((\d{1,2}(\.\d{1,2})?)|100|100.00)$/ // 0-100之间的整数 或者小数 &am…