Vue2配置路由

1、安装Vue Router

如果你还没有安装 Vue Router,请先安装它。

bash 复制代码
npm install vue-router@3

2、新增router 的index.js

创建路由配置文件(例如 src/router/index.js),并在其中定义路由规则。

javascript 复制代码
import Vue from "vue";
import VueRouter from "vue-router";
import newPage from "../views/newPage.vue";
import indexPage from "../views/indexPage.vue";



Vue.use(VueRouter);

const routes = [
    {
        path: '/',
        name: 'indexPage',
        component: indexPage
      },
    {
      path: '/newPage',
      name: 'newPage',
      component: newPage
    },
  ];
const router = new VueRouter({
    mode: 'history',
    base: process.env.BASE_URL,
    routes
  });
  
export default router;

3、注册路由到主应用

在 main.js 中注册路由,导入并使用路由。

javascript 复制代码
import Vue from 'vue'
import App from './App.vue'
import router from './router'

new Vue({
  router,//注册路由
  render: h => h(App),
}).$mount('#app')

4、修改app.vue

注意要有router-view标签

html 复制代码
<template>
  <div id="app">
  <router-view></router-view> <!-- 确保有这个标签 -->
  </div>
  </template>

  <script>
  export default {
    name: 'App',

  }
    </script>

    <style>
    #app {
    font-family: Avenir, Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-align: center;
    color: #2c3e50;
    margin-top: 60px;
  }
</style>

5、使用

两种使用方法:

1、使用router-link标签直接实现路由跳转

2、使用this.$router.push实现路由跳转

html 复制代码
<template>
  <div class="newPage">
    <h1>Vue基础知识</h1>
    <!-- 使用按钮并添加事件处理器 -->
    <router-link to="/onePage">第一章 </router-link>
    <button @click="goToOne">第一章 </button><br><br>
    
  </div>
</template>
  
<script>
export default {
  name: 'newPage',
 
  methods: {
    goToOne() {
      console.log('goToOne');
      // 使用编程式导航跳转到 /onePage 页面
      this.$router.push({
        path: '/onePage'
      })

    },
   
  }
  
}
</script>
  
<style scoped></style>
  
相关推荐
Jonathan Star3 小时前
沉浸式雨天海岸:用A-Frame打造WebXR互动场景
前端·javascript
工业甲酰苯胺4 小时前
实现 json path 来评估函数式解析器的损耗
java·前端·json
老前端的功夫4 小时前
Web应用的永生之术:PWA落地与实践深度指南
java·开发语言·前端·javascript·css·node.js
LilySesy4 小时前
ABAP+WHERE字段长度不一致报错解决
java·前端·javascript·bug·sap·abap·alv
Wang's Blog5 小时前
前端FAQ: Vue 3 与 Vue 2 相⽐有哪些重要的改进?
前端·javascript·vue.js
再希6 小时前
React+Tailwind CSS+Shadcn UI
前端·react.js·ui
用户47949283569156 小时前
JavaScript 的 NaN !== NaN 之谜:从 CPU 指令到 IEEE 754 标准的完整解密
前端·javascript
群联云防护小杜6 小时前
国产化环境下 Web 应用如何满足等保 2.0?从 Nginx 配置到 AI 防护实战
运维·前端·nginx
ss2736 小时前
Springboot + vue 医院管理系统
vue.js·spring boot·后端
醉方休6 小时前
Web3.js 全面解析
前端·javascript·electron