vue-router笔记
1.vue-router 安装
在安装webpack模块时就安装了
eg: vue init webpack demo (安装webpack模块并取名为demo)
在安装模块时没有安装的话,可以
npm install vue-router --dev-save
2.基本路由
components目录下写路由后的.vue页面
router/index.js 写路由的内容(导入和路径描写)
App.vue下写路径指引(router-link to=“”)
3.子路由
components目录下写路由后的.vue页面;
子路由的父路由的想要显示子路由内容的地方写 router-view
router/index.js的子路由的路径要写在子路由的父路由的children属性下,格式与routers相同
eg:
// 子路由 // { // path: '/Hi', // component: Hi, // children: [ // {path: '/', name: 'Hi',component: Hi}, // {path: 'Hi1', name: 'Hi1',component: Hi1}, // {path: 'Hi2', name: 'Hi2',component: Hi2}, // ] // }
4.使用name进行参数传递
直接使用{{router.name}}进行参数传递
或者是
绑定+引用
绑定:
router-link:to="{name:'demo',params:{username:'xiao_ruo_ji',id:'666'}}"
引用:
{{$route.params.username}}-{{$route.params.id}}
5.多路由操作
创建多个router-view
使用name来区分每个router-view
router/index.js里面的components进行配置(默认名称为default)
eg:
// 多路由操作 // { // path: '/', // name: 'HelloWorld', // components: { // default:HelloWorld, // left:Hi1, // right:Hi2 // } // }, 6.url传参 (定义)直接在/router/index.js的path中使用“:”来进行参数绑定,绑定的过程中还可以使用“(正则表达式)”来进行参数类型限制,哦,对了,不要忘记导入。 (传参)App.vue中进行使用routerlink to=“路径/参数1/参数2/...” (引用/参数获取) components目录下对应的文件中{{$route.text.text}}进行导入 eg: <p>NewsTitle:{{$route.params.newsTitle}}</p> 7.重定向 用途:url不同,页面相同 eg: index.js中 { path:'/goHome', redirect:'/' } 或者是(path) { path:'/goParams/:newsId(\\d+)/:newsTitle' } 然后在App.vue中引用 <router-link to:"/goParams/178/xiao-bai">goParams</router-link> 8.alias别名 index.js路由最后 alias:'/another_name' 与重定向的区别: alias的url中显示的是别名 redirecter的url中显示的是重定向后的url 9.简单路由过渡动画 transition标签包裹路由 name="fade" mode="out-in" ||"in-out" eg: <transition name="fade" mode="out-in"> <router-view /> <router-view name="demo" /> </transition> css(style)中: .fade-enter{ opacity:0; }
.fade-enter-active{ transition:opacity .3s; } .fade-leave{ opacity:1; } .fade-leave-active{ opacity: 0; transition:opacity .3s; } 10.mode用法与404页面的添加 /router/index.js下的 routers的第一个属性 mode 可以有两个值 history(不显示‘#’) hash(默认) 404页面 只需要在components目录下自己写个404页面 然后在routers的path中使用“*”来定位即可 11.钩子函数 (to,from,next)=>{
next({path:'/'}); //跳转到"/"} 注意:next()相当于是个开关,没有它,就不会执行后面的东西。可以根据to、from的内容对next进行开关控制1.钩子函数可以放到路由中,eg: { path:'/params/:newsId(\\d+)/:newsTitle', name:'params', component:params, beforeEnter:(to,from,next)=>{ console.log(to); console.log(from); next(); } }, 12.编程式导航 前进 后退 返回任意界面
<template> <div> <button @click="goBack">后退</button> <button @click="goGo">前进</button> <button @click="goHome">返回首页</button> </div></template> <script> export default { name: 'App', methods:{ goBack(){ this.$router.go(-1); }, goGo(){ this.$router.go(1); }, goHome(){ this.$router.push("/"); } } }</script>
vue-router笔记的更多相关文章
- Vue.js 2.x笔记:路由Vue Router(6)
1. Vue Router简介与安装 1.1 Vue Router简介 Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,构建单页面应用. Vue Rout ...
- Vue Router学习笔记
前端的路由:一个地址对应一个组件 Vue Router中文文档 一.路由基本使用 第1步:导入Vue Router: <script src="https://unpkg.com/vu ...
- Vue学习笔记-Vue.js-2.X 学习(七)===>脚手架Vue-CLI(路由Router)
脚手架Vue-CLI(路由Router) 一 按装(通过新创建脚手架按装),如果在原来的脚手架上按装直接进图型化界面vue ui的插件按装. 二 使用(上面按装下面步骤自动会生成) 第一步:导入路由对 ...
- python 全栈开发,Day91(Vue实例的生命周期,组件间通信之中央事件总线bus,Vue Router,vue-cli 工具)
昨日内容回顾 0. 组件注意事项!!! data属性必须是一个函数! 1. 注册全局组件 Vue.component('组件名',{ template: `` }) var app = new Vue ...
- vue学习笔记(九)vue-cli中的组件通信
前言 在上一篇博客vue学习笔记(八)组件校验&通信中,我们学会了vue中组件的校验和父组件向子组件传递信息以及子组件通知父组件(父子组件通信),上一篇博客也提到那是对组件内容的刚刚开始,而本 ...
- vue学习笔记(十)路由
前言 在上一篇博客vue学习笔记(九)vue-cli中的组件通信内容中,我们学习组件通信的相关内容和进行了一些组件通信的小练习,相信大家已经掌握了vue-cli中的组件通信,而本篇博客将会带你更上一层 ...
- Vue学习笔记-Vue.js-2.X 学习(四)===>脚手架Vue-CLI(基本工作和创建)
(五) 脚手架Vue-CLI 一 Vue-CLI前提(nodejs和webpack) 二 Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nod ...
- Vue学习笔记-Django REST framework3后端接口API学习
一 使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7 (Windows x86- ...
- Vue学习笔记-vue-element-admin 前端学习
一 使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7 (Windows x86- ...
- Vue 2.0 + Vue Router + Vuex
用 Vue.js 2.x 与相配套的 Vue Router.Vuex 搭建了一个最基本的后台管理系统的骨架. 当然先要安装 node.js(包括了 npm).vue-cli 项目结构如图所示: ass ...
随机推荐
- 一周一个小demo — vue.js实现备忘录功能
这个vue实现备忘录的功能demo是K在github上找到的,K觉得这是一个用来对vue.js入门的一个非常简单的demo,所以拿在这里共享一下. (尊重他人劳动成果,从小事做起~ demo原git ...
- 转:hive-列转行和行转列
1. 假设我们在hive中有两张表,其中一张表是存用户基本信息,另一张表是存用户的地址信息等,表数据假设如下: user_basic_info: id name 1 a 2 b 3 c 4 d use ...
- Tesseract-OCR -01-Tesseract 介绍
Tesseract-OCR -01-Tesseract 介绍 OCR(Optical Character Recognition): 光学字符识别,是指对图片文件中的文字进行分析识别,获取的过程 Te ...
- Python语言下图像的操作方法总结
本章主要讲解 图像的读取方式.灰度化操作.图像转化为矩阵的方法 假设 strImgPath是图像的路径, img对象将图片读入到内存中 读取图像的第一种方式:skImage from skimage ...
- 微软智能云的核心DNA
你知道吗? 今天,微软智能云平台运行于全球30个区域,体量超过了两大云服务商亚马逊和谷歌的总和: 今天,在全球范围内超过85%的财富五百强企业都使用了微软Azure云服务,而中国部分的用户也达到了六万 ...
- JAVA中的那些名词解释!
1.JDO: (Java Data Object )是Java对象持久化的新的规范,也是一个用于存取某种数据仓库中的对象的标准化API.作用:用于存取某种数据仓库中的对象 2.JPA: JPA是Jav ...
- shell-day1
shell概述:这里说的是命令行shell,例如"bash/sh/ksh/csh"(Unix/Linux系统).cmd.exe命令提示字符(windwos系统),这里主要介绍Uni ...
- C#中internal关键字
对于一些大型的项目,通常由很多个DLL文件组成,引用了这些DLL,就能访问DLL里面的类和类里面的方法.比如,你写了一个记录日志的DLL,任何项目只要引用此DLL就能实现记录日志的功能,这个DLL文件 ...
- 自动备份软件 —— Syncovery 7.98s Pro/Enterprise
SynCovery自动备份软件原名Super Flexible Synchronizer,是目前功能最为强大的实时自动备份工具,连FTP.WebDAV等全部支持!最近从V6开始改用比较好记.易懂的新名 ...
- OC Copy and MutableCopy的使用
#import <Foundation/Foundation.h> @interface Student : NSObject <NSCopying> // copy代表set ...