vue3使用vue-router的完整步骤记录


Posted in Vue.js onJune 20, 2021

前言

对于大多数单页应用程序而言,管理路由是一项必不可少的功能。随着新版本的Vue Router处于Alpha阶段,我们已经可以开始查看下一个版本的Vue中它是如何工作的。

Vue3中的许多更改都会稍微改变我们访问插件和库的方式,其中包括Vue Router。

一、第一步:安装vue-router

npm install vue-router@4.0.0-beta.13

二、第二步:main.js

先来对比一下vue2和vue3中main.js的区别:(第一张为vue2,第二张为vue3)

vue3使用vue-router的完整步骤记录vue3使用vue-router的完整步骤记录

可以明显看到,我们在vue2中常用到的Vue对象,在vue3中由于直接使用了createApp方法“消失”了,但实际上使用createApp方法创造出来的app就是一个Vue对象,在vue2中经常使用到的Vue.use(),在vue3中可以换成app.use()正常使用;在vue3的mian.js文件中,使用vue-router直接用app.use()方法把router调用了就可以了。

注:import 路由文件导出的路由名 from "对应路由文件相对路径",项目目录如下(vue2与vue3同):

vue3使用vue-router的完整步骤记录

三、路由文件

import { createRouter, createWebHashHistory } from "vue-router"

const routes = [
    {
        path: '/',
        component: () => import('@/pages')             
    },
    {
        path: '/test1',
        name: "test1",
        component: () => import('@/pages/test1')   
    },
    {
        path: '/test2',
        name: "test2",
        component: () => import('@/pages/test2')   
    },
]
export const router = createRouter({
  history: createWebHashHistory(),
  routes: routes
})

export default router

四、app.vue

<template>
  <router-view></router-view>
</template>

<script>

export default {
  name: 'App',
  components: {
  }
}
</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>

四、使用(比如跳转)

我们在需要使用路由的地方引入useRoute 和 useRouter (相当于vue2中的 $route 和 $router)

<script>
import { useRoute, useRouter } from 'vue-router'
export default {
  setup () {
    const route = useRoute()
    const router = useRouter()
    return {}
  },
}

例:页面跳转

<template>
  <h1>我是test1</h1>
  <button @click="toTest2">toTest2</button>
</template>
<script>
import { useRouter } from 'vue-router'
export default {
  setup () {
    const router = useRouter()
    const toTest2= (() => {
      router.push("./test2")
    })
    return {
      toTest2
    }
  },
}
</script>
<style  scoped>
</style>

总结

到此这篇关于vue3使用vue-router的文章就介绍到这了,更多相关vue3使用vue-router内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Vue.js 相关文章推荐
如何实现vue的tree组件
Dec 03 Vue.js
在vue中动态修改css其中一个属性值操作
Dec 07 Vue.js
vue 使用rules对表单字段进行校验的步骤
Dec 25 Vue.js
vue+elementui通用弹窗的实现(新增+编辑)
Jan 07 Vue.js
通过vue.extend实现消息提示弹框的方法记录
Jan 07 Vue.js
vue项目配置 webpack-obfuscator 进行代码加密混淆的实现
Feb 26 Vue.js
vue+element ui实现锚点定位
Jun 29 Vue.js
vue项目支付功能代码详解
Feb 18 Vue.js
VUE中的v-if与v-show区别介绍
Mar 13 Vue.js
vue组件冲突之引用另一个组件出现组件不显示的问题
Apr 13 Vue.js
vue/cli 配置动态代理无需重启服务的方法
May 20 Vue.js
一篇文章学会Vue中间件管道
Jun 20 #Vue.js
Vue过滤器(filter)实现及应用场景详解
使用Vue3+Vant组件实现App搜索历史记录功能(示例代码)
解决Vue+SpringBoot+Shiro跨域问题
Jun 09 #Vue.js
Vue中插槽slot的使用方法与应用场景详析
vue+elementui 实现新增和修改共用一个弹框的完整代码
解决vue $http的get和post请求跨域问题
You might like
这部番真是良心,画质好到像风景区,剧情让人跟着小公会热血沸腾
2020/03/10 日漫
磨咖啡豆的密诀
2021/03/03 冲泡冲煮
珊瑚虫IP库浅析
2007/02/15 PHP
jquery 可拖拽的窗体控件实现代码
2010/03/21 Javascript
实现变速回到顶部的JavaScript代码
2011/05/09 Javascript
javascript实现一个数值加法函数
2015/06/26 Javascript
基于Bootstrap重置输入框内容按钮插件
2016/05/12 Javascript
javascript实现根据汉字获取简拼
2016/09/25 Javascript
值得分享的JavaScript实现图片轮播组件
2016/11/21 Javascript
Bootstrap 模态框实例插件案例分析
2016/12/28 Javascript
Webpack执行命令参数详解
2017/06/17 Javascript
解决ie img标签内存泄漏的问题
2017/10/13 Javascript
详解在WebStorm中添加Vue.js单文件组件的高亮及语法支持
2017/10/21 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
2018/01/20 Javascript
angularJs-$http实现百度搜索时的动态下拉框示例
2018/02/27 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
2018/08/31 Javascript
使用RxJS更优雅地进行定时请求详析
2019/06/02 Javascript
一些可能会用到的Node.js面试题
2019/06/15 Javascript
python实现的正则表达式功能入门教程【经典】
2017/06/05 Python
Python基础教程之浅拷贝和深拷贝实例详解
2017/07/15 Python
Python3实现发送QQ邮件功能(附件)
2020/12/23 Python
python机器学习理论与实战(四)逻辑回归
2018/01/19 Python
Python常见字符串操作函数小结【split()、join()、strip()】
2018/02/02 Python
Python求解任意闭区间的所有素数
2018/06/10 Python
python实现比对美团接口返回数据和本地mongo数据是否一致示例
2019/08/09 Python
Python FTP文件定时自动下载实现过程解析
2019/11/12 Python
基于python读取.mat文件并取出信息
2019/12/16 Python
加拿大领先的优质厨具产品在线购物网站:Golda’s Kitchen
2017/11/17 全球购物
几个MySql的面试题
2013/04/22 面试题
继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?
2015/11/18 面试题
实习生自荐信范文分享
2013/11/27 职场文书
质量承诺书格式
2014/05/20 职场文书
询价采购方案
2014/06/09 职场文书
圣诞晚会主持词
2015/07/01 职场文书
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
2021/05/17 Python
Docker下安装Oracle19c
2022/04/13 Servers