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
相关推荐
是梦终空2 天前
计算机毕业设计264—基于Springboot+Vue3+协同过滤的房屋租赁管理系统(源代码+数据库+万字论文+设计文档)Irene19914 天前
通用消息组件 bug 修复及更好的实现是使用函数调用组件weixin_425543734 天前
TRAE CN3.3.25 构建的Electron简易DEMO应用Irene19915 天前
Vuex4:专为 Vue 3 设计,提供完整 TypeScript 支持无法长大5 天前
如何判断项目需不需要用、能不能用Tailwind CSScui_win6 天前
企业级中后台开源解决方案汇总敲敲了个代码7 天前
从N倍人力到1次修改:Vite Plugin Modular 如何拯救多产品前端维护困境Sapphire~7 天前
Vue3-19 hooks 前端数据和方法的封装記億揺晃着的那天7 天前
Vue3 动态路由在生产环境才出现白屏的排查与解决(keep-alive 踩坑实录)打小就很皮...8 天前
React 19 + Vite 6 + SWC 构建优化实践