Vue--第十天

终极实战----大事件项目

1.简介:

2.创建项目:

1.创建(159-163):

还是对着视频操作吧

2.路由:

3.element Plus:

导入element Plus 后不需要再导入插件配置,就连组件导入也不用

4.pinia构建用户仓库和持久化:

持久化:

单独管理和导出:

5.数据交互-请求工具设计:

配置:

import axios from 'axios'

import {ElMessage} from 'element-plus'

import router from '@/router'

import { useUserStore } from '@/store'

const baseURL = 'http://big-event-vue-api-t.itheima.net'

const instance = axios.create({

  baseURL,

  timeout: 5000,

  headers: { 'X-Custom-Header': 'foobar' }

})

// 请求拦截器

instance.interceptors.request.use(

  (config) => {

    // TODO 2. 携带token

    const userStore = useUserStore()

    if (userStore.token) {

      config.headers.Authorization = userStore.token

    }

    return config

  },

  (err) => Promise.reject(err)

)

// 响应拦截器

instance.interceptors.response.use(

  (res) => {

    // TODO 3. 处理业务失败

    // TODO 4. 摘取核心响应数据

    if (res.data.code === 0) {

      return res

    }

    ElMessage.error(res.data.message || '服务异常')

    // 处理业务失败,给错误提示,异常抛出

    return Promise.reject(res.data)

  },

  (err) => {

    // TODO 5. 处理401错误

    // 错误的特殊情况 => 401 权限不足 或 token 过期  => 拦截到登录

    if (err.message?.status === 401) {

      router.push('/login')

    }

    // 错误的默认情况 => 只要给提示

    ElMessage.error(err.response.data.message || '服务异常')

    return Promise.reject(err)

  }

)

export default instance

// 其实这里导出基础路由我不是很理解

export { baseURL }

6.整体路由设计:

7.登录页加载:

8.校验:

9.预校验:

注意:在我们开始导入组建的时候,我们是按需导入的,所以我们不用在第二次在页面中导入。像这种做法就是错的。

我们可以这么做:再eslintrc中声明全局变量,解决ElMesage报错问题

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

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

相关文章

视频号小店如何搭建团队?

我是电商珠珠 在视频号小店内,最适合发展的就是企业店。对于商家来说,前期需要办理企业的营业执照,然后再进行入驻。 企业店的发展潜力比较大,个体店只适合达人去玩。但是对于开店之后的团队搭建问题,有很多人不知道…

【二分查找】35.搜索插入位置

题目 法1&#xff1a;二分查找 基础方法&#xff0c;必须掌握&#xff01; class Solution {public int searchInsert(int[] nums, int target) {if (nums.length 0) {return 0;}int left 0, right nums.length - 1, mid 0;while (left < right) {mid left (right …

nginx部署vue项目

nginx部署vue 解决nginx中vue项目刷新报404问题解决nginx转发后端服务隐藏部分url访问url路径/prod-api/api经过nginx反向代理后&#xff0c;到达后端服务的实际url地址为/api。 解决nginx中vue项目刷新报404问题 location / { …

论文阅读——Painter

Images Speak in Images: A Generalist Painter for In-Context Visual Learning GitHub - baaivision/Painter: Painter & SegGPT Series: Vision Foundation Models from BAAI 可以做什么&#xff1a; 输入和输出都是图片&#xff0c;并且不同人物输出的图片格式相同&a…

券商期权手续费现在最低多少钱一张?怎么调低最方便

券商期权手续费是指您在证券公司开设期权账户并进行期权交易时&#xff0c;需要向券商支付的费用。券商期权手续费主要包括以下三个部分&#xff1a; 中国结算费用&#xff1a;这是中国证券登记结算有限责任公司向期权交易者收取的费用&#xff0c;固定为每张合约0.3元&#x…

智能优化算法应用:基于算术优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于算术优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于算术优化算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.算术优化算法4.实验参数设定5.算法结果6.…

关于iframes的嵌套问题

1.检测iframes的嵌套方式一 if (self.frameElement && self.frameElement.tagName "IFRAME") {alert(‘在iframe中’); }2.检测iframes的嵌套方式二 if (window.frames.length ! parent.frames.length) {alert(‘在iframe中’); }3.检测iframes的嵌套方式…

Macbook 系统时间异常问题

现象 忘记充电&#xff0c;电量耗尽关机&#xff0c;开机后时间不对&#xff0c;开启自动对时&#xff0c;时间会变成上个月的一天&#xff0c;系统更新后问题依旧&#xff0c;每次出现问题都需要手动调整。 解决方法验证 删除 /var/db/timed/com.apple.timed.plist删除 /et…

【STM32入门】4.3旋转编码器计次

1.旋转编码器原理 旋转编码器旋转的时候A、B两个引脚会产生相位差90度的方波&#xff0c;这个地方要尤其注意&#xff1a; 1.方波的相位差决定了中断触发方式&#xff0c;是上升沿还是下降沿。 2.方波的相位差决定了判断逻辑。 逻辑&#xff1a; 1.A引脚的上升沿对应B引脚…

【转载】【Unity】WebSocket通信

1 前言 Unity客户端常用的与服务器通信的方式有socket、http、webSocket。本文主要实现一个简单的WebSocket通信案例&#xff0c;包含客户端、服务器&#xff0c;实现了两端的通信以及客户端向服务器发送关闭连接请求的功能。实现上没有使用Unity相关插件&#xff0c;使用的就是…

【QT】解决QTableView鼠标点击合并单元格高亮显示问题

问题 正常显示 鼠标单击时只会选中当前行 异常显示 解决方案 在操作之前清除单元格合并&#xff0c;然后再合并单元格&#xff1b; 合并单元格是好的&#xff0c;说明合并没有问题&#xff0c;所以最简单的办法就是将单元格的状态恢复到初始的时候&#xff0c;在进行操作&…

maven构建单个模块,遇到错误:Could not find the selected project in the reactor

mvn install -pl modulename -am -pl 参数用于指定要构建的子模块&#xff0c;可以通过指定子模块的 artifactId 或者模块路径来指定。在命令中使用 -pl my-submodule 表示只构建名为 my-submodule 的子模块。 -am 参数用于自动构建依赖的模块。如果当前构建的模块依赖于其他…

bottom-up-attention-vqa-master 成功复现!!!

代码地址 1、create_dictionary.py 建立词典和使用预训练的glove向量 &#xff08;1&#xff09;create_dictionary() 遍历每个question文件取出所关注的question部分&#xff0c;qs 遍历qs&#xff0c;对每个问题的文本内容进行分词&#xff0c;并将分词结果添加到字典中&…

LabVIEW开发自动驾驶的双目测距系统

LabVIEW开发自动驾驶的双目测距系统 随着车辆驾驶技术的不断发展&#xff0c;自动驾驶技术正日益成为现实。从L2级别的辅助驾驶技术到L3级别的受条件约束的自动驾驶技术&#xff0c;车辆安全性和智能化水平正在不断提升。在这个过程中&#xff0c;车辆主动安全预警系统发挥着关…

Ubuntu基础操作和使用指南

Ubuntu基础操作和使用指南 Ubuntu是一款流行的开源操作系统&#xff0c;广泛应用于个人电脑、服务器和云计算环境。本文将介绍Ubuntu的基础操作和使用&#xff0c;帮助读者更好地使用这个操作系统。 1. 安装和设置 首先&#xff0c;你需要安装Ubuntu。你可以从Ubuntu官方网站…

LDAP的介绍以及JAVA使用LdapTemplate来进行AD域的操作

一、概念介绍 1.1 LDAP LDAP&#xff08;轻型目录访问协议&#xff09;是一种用于访问和维护分布式目录服务的开放标准协议。LDAP最初是从X.500标准中派生出来的&#xff0c;但相比于X.500&#xff0c;LDAP更加简化和灵活。LDAP协议定义了客户端和服务器之间进行通信的规范&a…

WebMvcConfigurer接口详解及使用方式(Spring-WebMvc)

简介 如下图所示WebMvcConfigurer是spring-webmvc jar包下的一个接口&#xff0c;spring-webmvc jar包又来源于spring-boot-starter-web&#xff0c;所以要使用WebMvcConfigurer要引入spring-boot-starter-web依赖。WebMvcConfigurer接口提供了常用的web应用拦截方法。通过实现…

Lazada物流禁运规则是什么?Lazada物流禁运商品有哪些?——站斧浏览器

Lazada物流禁运规则 Lazada平台对物流禁运商品的规则主要有以下几个方面&#xff1a; 1.卖家在上传商品时需要填写正确的商品信息&#xff0c;包括商品名称、描述、图片等。如果卖家填写不准确或者存在虚假信息&#xff0c;将会导致物流禁运商品的误判。 2.卖家需要遵守平台…

HQX System Performance Troubleshooting Overview

Ensure your gvm config contain below ftrace configs: #导出config配置 adb root adb shell proc/config.gz#确认下列ftrace config是否开启&#xff0c;如果没有开启在代码中进行配置 CONFIG_TASKS_TRACE_RCUy CONFIG_TRACEPOINTSy CONFIG_STACKTRACE_SUPPORTy CONFIG_TRAC…