VUE项目中引入vue-router的详细过程

 更新时间:2023年05月17日 14:34:33   作者:前端mian  
vue-router 也叫 vue 路由,根据不同的路径,来执行不同的组件,这篇文章主要介绍了VUE项目中引入vue-router,需要的朋友可以参考下

1、初识 vue-router

vue-router 也叫 vue 路由,根据不同的路径,来执行不同的组件

2、安装 vue-router

npm install vue-router

就会发现,在 package.json 文件中,增加了如下内容:

"dependencies": {
  "vue-router": "^3.6.5"
},

表示安装成功

3、引入 vue-router

1、router/index.js 文件

在 src 目录下新建 router 目录,并在 router 目录下新建一个 index.js 文件

src/router/index.js

文件内容如下:

import Vue from 'vue'
import Router from 'vue-router'
import Demo1 from '../components/Demo1'
Vue.use(Router);
// 设置组件映射规则
const routes = [
    {
        path: "/",
        redirect: "/demo1"
    },
    {
        path: '/demo1',
        component: Demo1
    }, {
        path: '/demo2',
        component: (resolve) => require(['@/components/Demo2'], resolve)
    }
]
export default new Router({
    routes
})
  • 可以通过 redirect 来实现重定向,我们将默认路由重定向到 demo1
  • 展示了两种组件引入方式:

1、import Demo1 from ‘…/components/Demo1’
2、component: (resolve) => require([‘@/components/Demo2’], resolve)

2、main.js 文件

import Vue from 'vue'
import App from './App.vue'
import router from './router'
Vue.config.productionTip = false
new Vue({
    render: h => h(App),
    router
}).$mount('#app')

引入我们创建的 router/index.js 文件,并将它挂载到我们的 vue 实例上

3、App.vue

<template>
  <div id="app">
    <img alt="Vue logo" src="./assets/logo.png">
    <HelloWorld msg="Welcome to Your Vue.js App"/>
    <router-view/>
  </div>
</template>
<script>
import HelloWorld from './components/HelloWorld.vue'
export default {
  name: 'App',
  components: {
    HelloWorld
  }
}
</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>

即根据路由映射出的组件将会在 router-view 标签内展示

<router-view/>

4、Demo1.vue

<template>
  <div>这是 demo1.vue</div>
</template>
<script>
export default {
  name: "Demo1"
}
</script>
<style scoped>
</style>

4、访问路由

http://localhost:8080

在这里插入图片描述

可以看到 Demo1.vue 组件被加载,路由也被重定向到:

http://localhost:8080/#/demo1

到此这篇关于VUE项目中引入vue-router的文章就介绍到这了,更多相关vue引入vue-router内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 基于Vue3+Node.js实现大文件上传功能

    基于Vue3+Node.js实现大文件上传功能

    在 2025 年的 Web 开发浪潮中,大文件上传已成为云存储,视频平台和多媒体应用的刚需,本文我们就来使用 Vue 3 前端配合 Node.js 后端构建一个支持秒传和续传的大文件上传系统吧
    2025-07-07
  • vue2.x中monaco-editor的使用说明

    vue2.x中monaco-editor的使用说明

    这篇文章主要介绍了vue2.x中monaco-editor的使用说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • 你知道vue data为什么是一个函数

    你知道vue data为什么是一个函数

    本篇文章从javascript原型链来解释为什么vue中data必须是一个函数,解释一下这部分的原理内容,感兴趣的朋友跟随小编一起看看吧
    2021-11-11
  • 使用vant-uploader上传照片无法删除的解决

    使用vant-uploader上传照片无法删除的解决

    这篇文章主要介绍了使用vant-uploader上传照片无法删除的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10
  • Vue-element中el-input输入卡顿问题的解决

    Vue-element中el-input输入卡顿问题的解决

    这篇文章主要介绍了Vue-element中el-input输入卡顿问题的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 在vue项目中,使用axios跨域处理

    在vue项目中,使用axios跨域处理

    下面小编就为大家分享一篇在vue项目中,使用axios跨域处理,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • VUE里如何修改element-ui的显示层次与上下间隔

    VUE里如何修改element-ui的显示层次与上下间隔

    这篇文章主要介绍了VUE里如何修改element-ui的显示层次与上下间隔问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Vue.js中的高级面试题及答案

    Vue.js中的高级面试题及答案

    Vue-loader 是 Webpack 的加载模块,它使我们可以用 Vue 文件格式编写单文件组件。这篇文章主要介绍了Vue.js的高级面试题以及答案,需要的朋友可以参考下
    2020-01-01
  • 如何解决sass-loader和node-sass版本冲突的问题

    如何解决sass-loader和node-sass版本冲突的问题

    这篇文章主要介绍了如何解决sass-loader和node-sass版本冲突的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • Vue3路由组件内的路由守卫onBeforeRouteLeave和onBeforeRouteUpdate使用

    Vue3路由组件内的路由守卫onBeforeRouteLeave和onBeforeRouteUpdate使用

    这篇文章主要介绍了Vue3路由组件内的路由守卫onBeforeRouteLeave和onBeforeRouteUpdate使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05

最新评论