IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> 【vue】知识------下 -> 正文阅读

[JavaScript知识库]【vue】知识------下

目录

路由定义

路由的使用

声明式导航

路由重定向

路由404设置

切换路由模式

编程式导航----基础使用

用js代码来进行路由跳转

js跳转路由,传参

路由嵌套

路由守卫

Vant组件库


组件分类:

?页面组件 src/views文件夹下 ??????页面展示 ?配合路由

?复用组件 src/components文件夹下 ?展示数据/常用于复用

路由定义

路径和组件的映射关系

单页面应用(SPA):所有功能在一个html页面上实现

前端路由功能:实现业务场景切换

优点:

整体不刷新页面,用户体验更好

数据传递更加容易,开发效率高

缺点:

开发成本高

首次加载会比较慢,不利于SEO排行

路由的使用

vue-router ?本质是一个第三方包

????????和vue.js深度集成

????????可以定义 ?视图表(映射规则)

????????模块化

????????提供两个内置全局组件

????????声明式导航自动激活的CSS class的链接

①下载vue-router模块到当前工程

②在main.js中引入VueRouter函数

③添加Vue.use()身上----注册全局RouterLink和RouterView组件

④创建路由规则数组----路由和组件名的对应关系

⑤用规则生成路由对象

⑥把路由对象注入到new Vue实例中

⑦用router-view作为挂载点,切换不同的路由页面<router-view></router-view>

// 目标:vue-router基本使用
//引入
import VueRouter from 'vue-router'
//注册全局组件
Vue.use(VueRouter)
//规则数组
const routes=[{ ? ?//最好写为routes 
? ? path:"/find",
? ? component:Find,
? ? },{
? ? ? ? path:"/my",
? ? ? ? component:MY,
? ? },{
? ? ? ? path:"/part",
? ? ? ? component:PART,
? ? }
]
//生成路由对象
const router=new VueRouter({
? ? //routes:routes ? ?//简写为下面形式
? ? routes ? ? ?//routes是固定的(传入规则数组) ?
})
//路由对象注入到vue实例中,this可以访问$route和$router
new Vue({
? ? router,
? ? render:h=>h(App),
}).$mount('#app')

@表示src的绝对路径


声明式导航

可用组件router-link来替代a标签

①vue-router提供了一个全局组件router-link

②router-link实质上最终会渲染成a链接to属性等价于提供href属性(to无需#)

③router-link提供了声明式导航高亮的功能(自带类名)

声明式导航-----跳转形参

在跳转路由时,可以给路由对应的组件内传值

在router-link上的to属性传值 ???

第一种: /path?参数名=值

第二种:/path/值 ??需要路由提前配置 path: “/path/:参数名1/:参数名2”

对应页面组件接收传递过来的值

第一种对应:$route.query.参数名

第二种对应:$route.params.参数名

路由重定向

匹配路径后,强制跳转path路径

网页打开url默认hash值是/路径

redirect是设置要定向到哪个路由地址

路由404设置

找不到路径给提示页面

在路由最后面 path匹配*(任意路径)---前面不匹配命中最后这个

切换路由模式

修改路由在地址栏的模式

hash路由例如:http://localhost:8080/#/home

history路由例如:http://localhost:8080/home(以后上线需要服务端支持,否则找的是文件夹)

在main.js中的实例化路由对象代码部分加入 ??mode: ”history”??// 默认不写是hash路径


编程式导航----基础使用

用js代码来进行路由跳转

使用path或name

this.$router.push({
? ? //path或者name任选一个,都在router/index.js定义
? ? // path:"路由路径",
? ? name:"路由名", //要在main.js规则部分每个路径加上name属性,虽然用name跳转,但是url上面路径切换path路径值
})

js跳转路由,传参

使用query或params

this.$router.push({
? ? //query或者params任选一个
? ? // path:"路由路径",
? ? name:"路由名", 
? ? query:{
? ? ? ? "参数名1":值1 ? ?//使用$route.query.参数名
? ? },
? ? // params:{
? ? // ? ? "参数名2":值2 ? ? ?//使用$route.params.参数名
? ? // }
})
//使用path方式 会忽略params,所以不可以和params一起使用
//使用name方式 query和params都可以使用 
//推荐name+query

路由嵌套

在现有的一级路由下,再嵌套二级路由

一级路由path从/开始定义

二级路由path直接写名字,无需/开头

嵌套路由在上级路由的children数组里编写路由信息对象


类名区别

观察路由嵌套导航的样式

router-link-exact-active(精确匹配)url中的hash值路径,与href属性值完全相同,设置此类名

router-link-active(模糊匹配)url中的hash值,包含href属性值这个路径

路由守卫

全局前置守卫

路由跳转之前,会触发一个函数

router.beforeEach((to,from,next)=>{})

例如:

let isLogin=false;//未登录
router.beforeEach((to,from,next)=>{ 
? ? //to表示要跳转的路由(路由对象信息) 目标
? ? // from表示从哪里跳转到路由(路由对象信息)来源
? ? //函数体 next()才会让路由正常的跳转切换,next(false)在原地停留,next("强制修改到另一个路由路径上")
? ? //注意:如果不调用next,也买你停在原地
? ? if(to.path==='/my'&&isLogin===false){ ?//如果要去我的音乐页面而且没有登录
? ? ? ? alert("请登录")
? ? ? ? next(false) //阻止路由跳转
? ? }else{
? ? ? ? next() //正常放行
? ? }
})

Vant组件库

一个轻量,可靠的移动端的Vue组件库,开箱即用

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章           查看所有文章
加:2021-10-29 12:54:58  更:2021-10-29 12:58:32 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/10 6:10:47-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码