1、util/request.js
javascriptimport axios from "axios"; let request = axios.create({ baseURL: "http://localhost:8080", timeout: 50000 }); export default request2、api/sysUser.js
javascriptimport request from "../util/request.js"; export const login = (data) => { return request.post('/sysUser', data); }3、components/Login.vue
html<script setup> </script> <template> <div class="common-layout"> <el-container> <el-header height="120px"> </el-header> <el-container> <el-aside width="36%"> </el-aside> <el-container> <el-main> <el-form :model="form" label-width="120px"> <el-form-item label="用户名:"> <el-input v-model="form.username" input-style="width:200px"/> </el-form-item> <el-form-item label="密  码:"> <el-input v-model="form.userPwd" type="password" placeholder="Please input password" show-password input-style="width:200px" /> </el-form-item> <el-form-item> <el-button type="primary" @click="doLogin">登录</el-button> <el-button>注册</el-button> </el-form-item> </el-form> </el-main> <el-footer> </el-footer> </el-container> </el-container> </el-container> </div> </template> <script lang="ts" setup> import {reactive} from 'vue' import {login} from "../api/sysUser.js"; import router from "../router/router.js"; // do not use same name with ref const form = reactive({ username: 'lina', userPwd: '123456', }) const doLogin = async () => { let response = await login(form); let {code, flag, data, msg} = response.data; //console.log(data) if (code === 200 && flag) { await router.push('/index'); } } </script>4、router.push()
在Vue.js 3中,
router.push仍然是一个非常重要的方法,用于导航到新的路由。这是Vue Router库的一部分,用于管理应用程序的路由。
router.push的主要作用是:
- 导航到新路由:当你在应用程序中想要导航到新的页面或者路由时,可以使用
router.push。你可以传递一个路由配置对象,或者一个字符串路径作为参数。- 编程式导航:与
<router-link>这样的HTML标签相比,router.push是一种编程式导航的方式。这意味着你可以在JavaScript代码中动态地决定要导航到的路由。- 处理回退:如果用户尝试访问他们之前访问过的页面,并且没有新的路由可供导航,那么
router.push会处理回退,并导航到前一个路由。- 处理重定向:你可以使用
router.push来重定向到一个新的路由,即使这个路由在当前的路由配置中不存在。下面是一个使用
router.push的简单示例:
javascriptimport { router } from './router' // 通过传递一个字符串路径进行导航 router.push('/home') // 通过传递一个路由配置对象进行导航 router.push({ path: '/user' })请注意,在Vue3中,你需要使用
createWebHistory()来创建一个HTML5 history对象,并传递给Vue Router的构造函数,以便能够使用router.push进行导航。
SSM项目实战-登录验证成功并路由到首页面,Vue3+Vite+Axios+Element-Plus技术
丁总学Java2023-12-04 13:41
相关推荐
Sheldon一蓑烟雨任平生1 天前
Vue3 任务管理器(Pinia 练习)云外天ノ☼2 天前
待办事项全栈实现:Vue3 + Node.js (Koa) + MySQL深度整合,构建生产级任务管理系统的技术实践行走的陀螺仪3 天前
uni-app + Vue3 实现折叠文本(超出省略 + 展开收起)用户9714171814274 天前
前端开发中的跨域问题:Vite 开发环境配置指南kuromiluu4 天前
从原理到实践:ViteSheldon一蓑烟雨任平生4 天前
Vue 用户管理系统(路由相关练习)Sheldon一蓑烟雨任平生4 天前
Vue3 插件(可选独立模块复用)菜市口的跳脚长颌5 天前
一个 Vite 打包配置,引发的问题—— global: 'globalThis'IT教程资源C6 天前
(N_158)基于微信小程序学生社团管理系统H_HX1266 天前
vue3 - 图片放大镜效果实现