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 ...
随机推荐
- CentOS 7运维管理笔记(12)----GUI配置工具Webmin的安装
早期的Linux系统管理员或是Web管理员在修改服务器配置时使用最多的就是vi编辑器,但是现在越来越多的基于GUI界面的配置工具出现了,毕竟人们还是喜欢以直接的可视化的方式来修改服务器的配置,而不是再 ...
- .NET开源工作流RoadFlow-流程运行-工作委托
如果某一个人某一段时间不在单位,则可以将自己的工作委托给他人代为处理. 在 流程处理-->工作委托 中可以管理自己的委托,管理员也可以在 流程管理-->工作委托 中管理所有人的委托: 委托 ...
- JavaScript中的XMLHttpRequest与WebAPI
JavaScript中的XMLHttpRequest与WebAPI它仅仅是一种客户端与服务端的关系.JavaScript中的XMLHttpRequest负责在客户端发起请求,而Web API负责在服务 ...
- Jmeter运营活动并发测试—巧用集合点
在运营活动测试过程中,经常需要对秒杀活动或定时抽奖活动进行并发测试.那么怎样快速便捷的模拟多用户同时参与活动,抽取奖品,进行并发测试呢?尤其是,当奖品总数N<用户总数M时,代码是否会存在奖品多发 ...
- linux第一个C语言和sh脚本
linux第一个C语言 $ gedit hello_world.c #include <stdio.h> int main(void) { printf("hello world ...
- Linux ->> uname命令 -- 查看当前系统信息
uname命令是用来打印当前Linux操作系统的信息,如果操作系统内核版本,操作系统是32位还是64位,计算机名字,操作系统安装时间,Linux操作系统类型 1) 操作系统是32位还是64位,感觉-m ...
- 【Leetcode】【Medium】Find Minimum in Rotated Sorted Array
Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ...
- QT容器map的插入,修改,遍历
除了map,QT的容器还有hash,以及迭代器等,这里写的是map #include "mainwindow.h" #include <QApplication> #i ...
- yii2.0里的redirect跳转方法
在yii2框架里难免会出现跨控制器跳转,调用方法等,这就用到了redirect了, 带参数的 $control=Yii::app()->runController('site/show/id/2 ...
- Linux:CentOS7卸载mysql
步骤 方法一. 1.查看mysql安装 rpm -qa|grep -i mysql 2.卸载前关闭mysql服务 rpm -ev --nodeps mysql-community-release-el ...