您的位置:首页 > 新闻 > 资讯 > 手机网站设计制作公司_品牌鞋子排行榜前十名_百度一下你就知道首页官网_百度官网推广平台电话

手机网站设计制作公司_品牌鞋子排行榜前十名_百度一下你就知道首页官网_百度官网推广平台电话

2025/6/7 18:08:33 来源:https://blog.csdn.net/llfxq/article/details/142876758  浏览:    关键词:手机网站设计制作公司_品牌鞋子排行榜前十名_百度一下你就知道首页官网_百度官网推广平台电话
手机网站设计制作公司_品牌鞋子排行榜前十名_百度一下你就知道首页官网_百度官网推广平台电话

前言

本系列将从零开始,系统性地介绍 Vue 3 的常用 API,逐步深入每个核心概念与功能模块。通过详尽的讲解与实战演示,帮助大家掌握 Vue 3 的基础与进阶知识,最终具备独立搭建完整 Vue 3 项目的能力。

Vue核心功能之一Router

ue 3 中的 Vue Router 是用于构建单页面应用程序(SPA)的官方路由管理器,它提供了强大而灵活的导航机制,让开发者可以轻松地管理应用内的多页面导航。

安装配置步骤

1.npm安装Router

cd my-vue-app
npm install vue-router@4

2.配置 Vue Router

引入router
import { createRouter, createWebHistory } from 'vue-router';
import Home from '../views/Home.vue';
import About from '../views/About.vue';const routes = [{path: '/',name: 'Home',component: Home},{path: '/about',name: 'About',component: About}
];const router = createRouter({history: createWebHistory(), // 使用 HTML5 History 模式routes
});
export default router;

3.main.js中挂载

import { createApp } from 'vue';
import App from './App.vue';
import router from './router'; // 导入路由配置const app = createApp(App);app.use(router); // 使用路由器app.mount('#app');

4.在应用中使用路由

<template><div id="app"><nav><ul><li><router-link to="/">Home</router-link></li><li><router-link to="/about">About</router-link></li></ul></nav><router-view></router-view></div>
</template><script>
export default {name: 'App'
}
</script>

内容详解:

1.声明式路由配置

在 Vue Router 中,你可以使用声明式方式定义应用的路由规则。每个路由映射到一个组件,当用户访问某个路径时,Vue Router 会渲染与之关联的组件。

const routes = [{ path: '/', component: Home },{ path: '/about', component: About },
];
2.动态路由

动态路由允许你使用参数(如用户 ID 或文章 ID)来匹配不同的路径。例如,/user/:id 可以匹配 /user/1 或 /user/2 等不同的路径,并通过 $route.params 访问这些参数。
后面的一篇关于权限的文章会详细介绍动态路由的使用

const routes = [{ path: '/user/:id', component: User },
];
3.嵌套路由

嵌套路由(也称为子路由)可以在应用中创建多层嵌套的视图结构。例如,一个主页可以有多个子视图,这些子视图各自拥有自己的路由。
嵌套路由也是我们工作中用到非常多的一个功能

const routes = [{//路由地址path: '/parent',//页面文件位置component: () => import('@/views/jlsbjc/index'),//子路由children: [{ path: 'child',//子路由组件component: Child },],},
];
4.导航守卫

Vue Router 提供了钩子函数(如 beforeEach 和 beforeResolve),可以在路由发生变化之前或之后执行逻辑。这对于权限验证、数据预加载等操作非常有用。
之后权限文章也会详细讲解路由守卫

router.beforeEach((to, from, next) => {//to代表着你要去哪里(表示即将要进入的目标路由对象。)//from代表着你从哪里来(代表当前导航正要离开的路由对象。)//next重定向,如果没有权限就直接跳转到指定的路由页面,一般是登录页面// 判断用户是否有权限访问该路由if (to.meta.requiresAuth && !isAuthenticated()) {//如果没有就重定向到页面首页next('/login');} else {// 继续导航next();}
});
5. 路由懒加载

为了优化性能,Vue Router 支持路由的懒加载功能,即只有在用户访问某个路由时才加载对应的组件。这样可以减少初次加载时的资源体积,提高页面响应速度。

const routes = [{path: '/about',component: () => import('./views/About.vue'),},
];
6. 滚动行为

Vue Router 支持自定义页面滚动行为,你可以指定当用户导航到新页面时页面的滚动位置。这在单页应用中提升了用户体验。

const router = createRouter({history: createWebHistory(),routes,scrollBehavior(to, from, savedPosition) {if (savedPosition) {return savedPosition;} else {return { top: 0 };}},
});
7. 路由模式(history、hash)

在 Vue Router 的 hash 模式和 history 模式中,Vue 提供了一些常用的方法来进行导航操作。无论是 hash 模式还是 history 模式,这些方法的使用方式是相同的,主要的差异体现在路由模式的 URL 表现形式和浏览器交互方式上。

    1. 用于导航到一个新的 URL 地址:router.push()
this.$router.push('/about'); // 使用路径
this.$router.push({ path: '/about' }); // 或者使用对象形式
this.$router.push({ name: 'about' }); // 使用命名路由
this.$router.push({ path: '/about', query: { id: 123 }}); // 带有查询参数
    1. 替换当前的路由,不会向 history 栈中添加新记录。:router.replace()
this.$router.replace('/about');
this.$router.replace({ name: 'about' });
this.$router.replace({ path: '/about', query: { id: 123 }});
    1. 用于在浏览器历史记录中向前或向后导航:router.go()
this.$router.go(1);  // 前进一页
this.$router.go(-1); // 后退一页
  • 4.等价于 router.go(-1),用于返回到上一个路由:router.back()
this.$router.back();
  • 5.用于前进到下一个路由。:router.forward()
this.$router.forward();

在 Vue Router 中可以通过配置路由来选择 history 模式或 hash 模式。默认是 hash 模式,如果想要使用 history 模式,需如下配置:

const router = new VueRouter({mode: 'history', // 使用 history 模式routes: [{ path: '/about', component: About },{ path: '/contact', component: Contact }]
});

总结:

安装与基本配置
使用 npm 安装 Vue Router 4.x,确保与 Vue 3 的兼容性。
配置路由器实例,并将其集成到 Vue 应用中,通过 createRouter 创建路由对象并定义路由规则。
路由功能详解:

声明式路由配置:简单而直观地定义路径与组件的映射关系。
动态路由:通过路径参数实现灵活的路由匹配,适用于用户详情页等需求。
嵌套路由:通过路由嵌套实现复杂的视图结构,支持多层次的界面布局。
导航守卫与懒加载

导航守卫:利用路由钩子函数实现权限控制和数据预加载,为应用提供更好的用户体验。
路由懒加载:按需加载组件优化性能,减少初次加载时间。

滚动行为与路由模式
自定义页面滚动行为,提升用户体验。
了解并配置路由的两种模式:history 和 hash 模式,根据需求选择合适的 URL 表现形式。
导航操作方法
使用 router.push、router.replace 等方法进行编程式导航,灵活控制页面跳转。

ps:以上内容仅为本人对 vue3的个人理解,如有不足之处,欢迎大家指正与交流,共同进步。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com