解决方案:Springboot+Vue3+Mybatis+Axios 前后端分离项目中 遇见的若干报错和踩坑避坑(二)

简介: 解决方案:Springboot+Vue3+Mybatis+Axios 前后端分离项目中 遇见的若干报错和踩坑避坑(二)

@TOC

Postman测试成功,实际项目测试失败

问题:createError.js?be90:16 Uncaught (in promise) Error: Request failed with status code 400     at createError (createError.js?be90:16:1)     at settle (settle.js?d43b:17:1)     at XMLHttpRequest.onloadend (xhr.js?e02e:66:1)

明明在postman测试都能添加上数据,到了vue中测试显示400错误。

问题原因1:前端的参数传输有问题,与postman上面测试的不一样

解决方案1:查看request里的参数,字母大小写,参数的数量,检查是否与你postman上测试的一样

在这里插入图片描述

Element-plus显示不出图标icon

问题:在用vue开发网站的时候,往往图标是起着很重要的作用,但是在开发中发现无论是<el-button type="primary" icon="Edit" >编辑</el-button>的形式,还是直接import {   Location,   Setting, } from "@element-plus/icons-vue";然后使用<el-icon><location /></el-icon>的形式,都无法显示图标icon。

问题原因:element-plus的icon组件需要额外安装并且额外全局引入

解决方案:

  1. 安装图标库:npm install @element-plus/icons
  2. 引入并注册,在main.ts中引入并注册:
import * as EleIcons from '@element-plus/icons-vue'
for (const name in EleIcons){
    app.component(name,(EleIcons as any)[name])
}

目前完整的main.ts:

import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import axios from './http'
import * as EleIcons from '@element-plus/icons-vue'
const app = createApp(App)
for (const name in EleIcons){
    app.component(name,(EleIcons as any)[name])
}
app.config.globalProperties.$axios = axios
app.use(ElementPlus)
app.use(store)
app.use(router)
app.mount('#app')

使用element-plus结合collapse实现点击按钮折叠或展开菜单

问题:element-plus给的例子是两个按钮,一个控制折叠一个控制展开。

解决方案:将collapse绑定一个值,然后设计一个按钮,点击触发菜单折叠与展开

<!-- 是否折叠菜单 -->
  <div class="toggle-button">
    <el-button @click="isCollapse = !isCollapse">||||</el-button>
  </div>
<el-menu
    default-active="2"
    class="el-menu-vertical-demo"
    :collapse="isCollapse"
    @open="handleOpen"
    @close="handleClose"
    :router="true"
  >
data() {
    return {
      isCollapse: true,
    };
  },
相关文章
|
JSON 分布式计算 大数据
springboot项目集成大数据第三方dolphinscheduler调度器
springboot项目集成大数据第三方dolphinscheduler调度器
960 3
|
Java 关系型数据库 数据库连接
Spring Boot项目集成MyBatis Plus操作PostgreSQL全解析
集成 Spring Boot、PostgreSQL 和 MyBatis Plus 的步骤与 MyBatis 类似,只不过在 MyBatis Plus 中提供了更多的便利功能,如自动生成 SQL、分页查询、Wrapper 查询等。
1278 2
|
Java 测试技术 Spring
简单学Spring Boot | 博客项目的测试
本内容介绍了基于Spring Boot的博客项目测试实践,重点在于通过测试驱动开发(TDD)优化服务层代码,提升代码质量和功能可靠性。案例详细展示了如何为PostService类编写测试用例、运行测试并根据反馈优化功能代码,包括两次优化过程。通过TDD流程,确保每项功能经过严格验证,增强代码可维护性与系统稳定性。
527 0
|
存储 Java 数据库连接
简单学Spring Boot | 博客项目的三层架构重构
本案例通过采用三层架构(数据访问层、业务逻辑层、表现层)重构项目,解决了集中式开发导致的代码臃肿问题。各层职责清晰,结合依赖注入实现解耦,提升了系统的可维护性、可测试性和可扩展性,为后续接入真实数据库奠定基础。
1018 0
|
分布式计算 大数据 Java
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
springboot项目集成大数据第三方dolphinscheduler调度器 执行/停止任务
432 0
|
JavaScript
Vue中Axios网络请求封装-企业最常用封装模式
本教程介绍如何安装并配置 Axios 实例,包含请求与响应拦截器,实现自动携带 Token、错误提示及登录状态管理,适用于 Vue 项目。
517 1
|
资源调度 JavaScript
|
JavaScript 前端开发
【Vue面试题二十五】、你了解axios的原理吗?有看过它的源码吗?
这篇文章主要讨论了axios的使用、原理以及源码分析。 文章中首先回顾了axios的基本用法,包括发送请求、请求拦截器和响应拦截器的使用,以及如何取消请求。接着,作者实现了一个简易版的axios,包括构造函数、请求方法、拦截器的实现等。最后,文章对axios的源码进行了分析,包括目录结构、核心文件axios.js的内容,以及axios实例化过程中的配置合并、拦截器的使用等。
【Vue面试题二十五】、你了解axios的原理吗?有看过它的源码吗?
|
JavaScript 前端开发
【Vue面试题二十七】、你了解axios的原理吗?有看过它的源码吗?
文章讨论了Vue项目目录结构的设计原则和实践,强调了项目结构清晰的重要性,提出了包括语义一致性、单一入口/出口、就近原则、公共文件的绝对路径引用等原则,并展示了单页面和多页面Vue项目的目录结构示例。
|
缓存 JavaScript 搜索推荐