• 从 Vue2向Vue3的迁移


    在 Vue Router API 从 v3(Vue2)到 v4(Vue3)的重写过程中,大部分的 Vue Router API 都没有变化,但是在迁移程序时,可能会遇到一些破坏性的变化。

    1、new Router 变成 createRouter

    Vue Router 不再是一个类,而是一组函数。现在不用再写new Router(),而是要调用createRouter():

    Vue2:

    1. import Router from 'vue-router'
    2. var router = new Router({
    3. ...
    4. })

    Vue3:

    1. import { createRouter } from 'vue-router'
    2. const router = createRouter({
    3. ...
    4. })

    2、新的 history 配置取代 mode

    mode:'history'配置已经被一个更灵活的history配置所取代。根据你使用的模式,必须用适当的函数替换它:

    • "history" :  createWebHistory()
    • "hash" :  createWebHashHistory()
    • "abstract" :  createMemoryHistory()

    Vue2:

    1. import Router from 'vue-router'
    2. var router = new Router({
    3. mode: 'history',
    4. routes: []
    5. })

    Vue3:

    1. import { createRouter, createWebHistory } from 'vue-router'
    2. // 还有 createWebHashHistory 和 createMemoryHistory
    3. createRouter({
    4. history: createWebHistory(),
    5. routes: []
    6. })

    3、移动了base配置

    在Vue3中,base配置被作为createWebHistory(其他 history 也一样)的第一个参数传递:

    Vue2:

    1. import Router from 'vue-router'
    2. var router = new Router({
    3. mode: 'history',
    4. base: process.env.BASE_URL,
    5. routes: []
    6. })

    Vue3:

    1. import { createRouter, createWebHistory } from 'vue-router'
    2. createRouter({
    3. history: createWebHistory(process.env.BASE_URL),
    4. routes: []
    5. })

    4、$router属性

    Vue3中调用$router.push()等属性时,不再需要this指针

    通过调用import router from "@/router"即可直接使用。

    Vue2:

    1. methods: {
    2. show: function (value) {
    3. this.$router.push({name: value});
    4. }
    5. }

    Vue3:

    1. import router from "@/router";
    2. methods:{
    3. show:function (value){
    4. router.push({name:value});
    5. }
    6. }

  • 相关阅读:
    图书管理系统【java】
    21天,胖哥亲自带你玩转OAuth2
    [附源码]Python计算机毕业设计Django校园招聘系统
    idea搭建SSM项目这一篇就够了
    微软宣布 S2C2F 已被 OpenSSF 采用
    java-php-python-ssm基于的燕理快递中转站系统的设计与实现计算机毕业设计
    探索数字孪生的潜力:五个最有前景的行业
    linux上部署java环境
    git-使用命令笔记
    软件设计师_计算机组成与体系结构
  • 原文地址:https://blog.csdn.net/weixin_61562639/article/details/126488410