当前位置:首页 > VUE

vue实现主页切换

2026-02-11 07:04:15VUE

路由配置

router/index.js 中配置路由规则,定义主页及其他页面的路径。使用 Vue Router 的 createRoutercreateWebHistory 方法:

import { createRouter, createWebHistory } from 'vue-router';
import Home from '../views/Home.vue';
import About from '../views/About.vue';

const routes = [
  { path: '/', component: Home },
  { path: '/about', component: About }
];

const router = createRouter({
  history: createWebHistory(),
  routes
});

export default router;

路由视图占位

在根组件(如 App.vue)中添加 <router-view> 标签作为动态内容占位符:

vue实现主页切换

<template>
  <div id="app">
    <nav>
      <router-link to="/">Home</router-link>
      <router-link to="/about">About</router-link>
    </nav>
    <router-view />
  </div>
</template>

导航菜单

使用 <router-link> 组件实现导航,通过 to 属性指定目标路径。可配合 CSS 样式高亮当前页:

<router-link 
  to="/about" 
  active-class="active-link"
>About</router-link>

编程式导航

通过 useRouter 钩子或 this.$router(Options API)实现代码跳转:

vue实现主页切换

import { useRouter } from 'vue-router';

export default {
  setup() {
    const router = useRouter();
    const goToAbout = () => router.push('/about');
    return { goToAbout };
  }
};

动态过渡效果

通过 <transition> 包裹 <router-view> 实现切换动画:

<router-view v-slot="{ Component }">
  <transition name="fade" mode="out-in">
    <component :is="Component" />
  </transition>
</router-view>

CSS 示例:

.fade-enter-active, .fade-leave-active {
  transition: opacity 0.5s;
}
.fade-enter-from, .fade-leave-to {
  opacity: 0;
}

标签: 主页vue
分享给朋友:

相关文章

vue scrolltop 实现

vue scrolltop 实现

实现 Vue 中的 scrollTop 在 Vue 中实现滚动到顶部功能可以通过多种方式完成,包括使用原生 JavaScript、Vue 指令或第三方库。以下是几种常见的实现方法: 使用原生 Jav…

vue实现桌面widget

vue实现桌面widget

Vue 实现桌面 Widget 的方法 使用 Vue 实现桌面 Widget 通常需要结合 Electron 或 NW.js 等桌面应用框架,以及系统级 API 调用。以下是具体实现方法: 使用 E…

vue如何实现计算

vue如何实现计算

Vue 实现计算的方法 Vue 提供了多种方式来实现计算逻辑,包括计算属性、方法、侦听器等。以下是几种常见的实现方式: 计算属性(Computed Properties) 计算属性是基于它们的响应式…

vue 实现异步加载

vue 实现异步加载

Vue 实现异步加载的方法 使用动态 import 实现组件懒加载 在 Vue 中可以通过动态 import() 语法实现组件的异步加载,这会使得组件在需要时才被加载,减少初始加载时间。 const…

vue滚动加载实现

vue滚动加载实现

vue滚动加载实现 滚动加载是一种常见的优化手段,通过监听滚动事件动态加载数据,减少初始渲染压力。以下是几种实现方式: 使用IntersectionObserver API Intersection…

vue 不可回退实现

vue 不可回退实现

不可回退的实现方法 在Vue中,实现不可回退的功能通常涉及路由控制和状态管理。以下是几种常见的方法: 禁用浏览器后退按钮 通过监听popstate事件阻止默认行为: mounted() {…