vue脚手架 手动搭建vueRouter

2024-06-21 05:20

本文主要是介绍vue脚手架 手动搭建vueRouter,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

01手写vueRouter3.x

02 路由跳转的两种方式

03 子路由的配置


01手写vueRouter3.x

        vue-Router v3.x是针对vue2项目  v4.x是针对vue3项目的

        要想配置路由 必须先下载路由模块(正常是下载好的 我们在自己搭建项目的时候选择vue-Router的情况下就是下载好的)

        npm i vue-router@版本号 --save(3.5.4)

        --save 是把当前下载的模块登记到package.json的依赖里面(要不然的话别人拿到之后下载依赖没有vueRtouer就报错)

        -g 表示全局安装到计算机c盘

        下载模块的时候如果是vue2项目记得要加版本号 不然就是安装最新版 是适配vue3项目的

        vue-router搭建步骤(v3.x)

        1 下载vue-router模块  npm i vue-router@3.5.4 --save

        2 在src文件夹里面新建router文件夹在这个文件夹里面新建index.js

        3 import Vue from 'vue'

        4 import VueRouter from 'vue-router'

        5 Vue.use(VueRouter)

        6 new VueRouter(options) 进行路由表的配置

        7 options路由表的配置对象常用的属性:

                routes 是一个数组 数组里面的每一个对象都是一个路由对象

                路由对象常用属性:

                {

                        path:'' 目前暂时所有路径都以/开头(表示都是首页同级的页面)  页面跳转的路径

                        component:当前路由对象渲染的组件对象

                        name:''路由的name值 以后跳转方式其中一种是根据name跳转的 也算是当前路由的唯一标识

                        meta:{当前路由的初始数据配置 可以在组件里面通过this.$route.mate.属性名获取

                        }

                }

        8 把当前创建出来的路由表对象 对外暴露  export default router

        9 在main.js引入router对象 并注册到Vue的options对象里面

                new Vue({

                        render: h => h(App),

                        router,//注册路由表对象到全局Vue对象中 让整个项目具有路由的功能

                }).$mount('#app')

        10 最后把router-view组件 定义在app.vue组件的template里面

                表示路由对应的path渲染的组件最终呈现的位置

02 路由跳转的两种方式

        1 静态跳转

            定义router-link组件 通过to属性关联path路径  用户点击跳转

            tag属性 表示是让router-link渲染成指定标签名(vue-router4.x中不推荐这种写法换成新写法)

            当前哪一个路由对应的页面正在呈现 那么当前路由对应的router-link标签就会生效两个类名

                router-link-active(父路由也会同时生效)

                router-link--exact-active(单单指当前路由)

        2 动态跳转

            在js代码中通过

                this.$router.push/replace方法进行跳转

                this.$router.push('/路由对应的path地址')

                或者

                this.$router.push('路由的name值') 比如有些路径/aa/bb/qq/ww/kk比较长 所以匹配name跳转更简单

        replace用法和push一模一样

03 子路由的配置

        子路由的配置:

              1 在要配置子路由的路由对象里面(routes数组里面的对象)

              2 定义children属性  值是一个数组

              3 数组每一个对象都是一个子路由对象

              4 子路由对象一样具有path name conponents 等属性

              5 子路由配置完毕之后需要把子路由的router-view组件写到父路由的template里面去

        子路由的path路径写法有两种:

           1 带/开头的路径

                实际跳转时 这个路径和/首页路径同级  直接/路径跳转不需要再前面加父路由路径

           2 不带/开头的路径

                那么实际跳转时 /父路由的路径/子路由path路径 必须带上父路由的路径(推荐使用)

                因为路径结构清新  缺点书写麻烦

        父路由配置默认显示的子路由:

                父路由对象添加一个属性

                        redirect:'子路由录屏' 重定向到子路由页面

这篇关于vue脚手架 手动搭建vueRouter的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1080318

相关文章

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

Mycat搭建分库分表方式

《Mycat搭建分库分表方式》文章介绍了如何使用分库分表架构来解决单表数据量过大带来的性能和存储容量限制的问题,通过在一对主从复制节点上配置数据源,并使用分片算法将数据分配到不同的数据库表中,可以有效... 目录分库分表解决的问题分库分表架构添加数据验证结果 总结分库分表解决的问题单表数据量过大带来的性能

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)

《Python基于火山引擎豆包大模型搭建QQ机器人详细教程(2024年最新)》:本文主要介绍Python基于火山引擎豆包大模型搭建QQ机器人详细的相关资料,包括开通模型、配置APIKEY鉴权和SD... 目录豆包大模型概述开通模型付费安装 SDK 环境配置 API KEY 鉴权Ark 模型接口Prompt

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

vue如何监听对象或者数组某个属性的变化详解

《vue如何监听对象或者数组某个属性的变化详解》这篇文章主要给大家介绍了关于vue如何监听对象或者数组某个属性的变化,在Vue.js中可以通过watch监听属性变化并动态修改其他属性的值,watch通... 目录前言用watch监听深度监听使用计算属性watch和计算属性的区别在vue 3中使用watchE

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE