vue-router 二级路由
/**
* Created by 我 on 2017/12/4.
*/
import Vue from 'vue' //import导入 Vue(自己起的名) from 从 vue
import Vuerouter from 'vue-router' //引进路由
//使用vuerouter
Vue.use(Vuerouter);
//console.log(Vuerouter);
//创建局部组件
const Index={
template:`<div>
<h2>这是首页</h2>
<router-view></router-view>
</div>`,
//监听路由变化 to是去的路径 from是来的路径
watch:{
'$route'(to,from){
console.log(arguments);
console.log(to);
}
},
/*beforeRouteUpdate(to,from,next){
console.log(arguments);
console.log(next);
}*/
beforeRouteUpdate (to, from, next) {
console.log(arguments);
// 在当前路由改变,但是该组件被复用时调用
// 举例来说,对于一个带有动态参数的路径 /foo/:id,在 /foo/1 和 /foo/2 之间跳转的时候,
// 由于会渲染同样的 Foo 组件,因此组件实例会被复用。而这个钩子就会在这个情况下被调用。
// 可以访问组件实例 `this`
next()
},
};
const New={
template:`<div>
<h2>这是新闻</h2>
<router-view></router-view>
</div>`
};
const Zixun={
template:`<div>
<h2>这是资讯</h2>
<router-view></router-view>
</div>`,
//在调用时候没有访问到实例,但可以通过next对其访问
beforeRouteEnter (to, from, next) {
console.log(arguments);
// 在渲染该组件的对应路由被 confirm 前调用
// 不!能!获取组件实例 `this`
// 因为当守卫执行前,组件实例还没被创建
next(vm=>{
console.log(vm);
})
}, beforeRouteLeave (to, from, next) {
console.log(arguments);
// 导航离开该组件的对应路由时调用
// 可以访问组件实例 `this`
next()
}
};
const Hello={
template:`<h2>这是小首页</h2>` };
const Xnew={
template:`<h2>这是小新闻</h2>`
};
//实例路由
const router=new Vuerouter({
mode:"history", //mode模式 history h5里面的方法 hash
base:__dirname, // base 文件路径 相对路径 filename 绝对路径
routes:[ //路由配置
{path:"/index",/*redirect:"/new",*/alias: '/b', component:Index, //redirect为重定向命名
//alias为别名 『重定向』的意思是,当用户访问 /a时,URL 将会被替换成 /b,然后匹配路由为 /b,那么『别名』又是什么呢?
///a 的别名是 /b,意味着,当用户访问 /b 时,URL 会保持为 /b,但是路由匹配则为 /a,就像用户访问 /a 一样。
children:[
//动态路由路径以冒号开头
{path:"/index/hello/:id",component:Hello},
{path:"/index/hello/:id",component:Hello}
]
}, //关联路由
{path:"/new",component:New,name:'new',
children:[ //二级路由
{path:"/new/xnew",component:Xnew },
]
},
{path:"/zixun",component:Zixun}, ]
});
//路由钩子
/*router.beforeEach((to, from, next) => { //全局的前置守卫
console.log(arguments);
//sessionStorage.setItem('user','')
//sessionStorage.getItem('user')
next()
});*/
new Vue({
el:"#app",
router, //开启路由
template:
`
<div>
<ul>
<li><router-link to="/index">这是首页</router-link>
<ol>
<li><router-link to="/index/hello/123">首页1</router-link></li>
<li><router-link to="/index/hello/234">首页2</router-link></li>
</ol></li>
<li><router-link to="/new">这是新闻</router-link>
<ol> <!-- 二级路由的内容-->
<li><router-link to="/new/xnew">这是小新闻</router-link></li>
</ol>
</li>
<li><router-link to="/zixun">这是资讯</router-link></li>
<router-view></router-view>
<ul>{{ $route.params.id }}</ul>
</ul> </div>
`
});
vue-router 二级路由的更多相关文章
- Vue 中的Vue Router一级路由,二级路由,三级路由以及跳转
今天编写了一下Vue中的路由 先用命令行新建一个空的项目,并且我知道要用路由,就下载了路由的相关依赖 vue init webpack demo5 完毕之后进入所在的项目 cd demo5 之后用vs ...
- vue之二级路由
router-view : <router-view> 组件是一个 functional 组件,渲染路径匹配到的视图组件 一 样式 1 在一个vue组件,<template>& ...
- Vue router 一个路由对应多个视图
使用命名路由 https://jsfiddle.net/posva/6du90epg/ <script src="https://unpkg.com/vue/dist/vue.js&q ...
- Vue router 全局路由守卫
记录一下全局路由守卫的使用: 方法一:定义一个数组用于检测与管理需要登录的页面,全局路由守卫配合本地存储判断是否跳转 import Vue from 'vue' import Router from ...
- vue router动态路由
<div id="#app"> <router-link to="/user/header">路由1</router-link&g ...
- vue router引入路由与路由配置容易犯错的地方与常见的报错与处理报错
首先npm安装vue-router插件,就不说了其次: 先看下我本地的目录结构吧 第一步:在src目录下新建一个专门存放router的index.js文件里面的内容为: import Vue from ...
- [Vue 牛刀小试]:第十三章 - Vue Router 基础使用再探(命名路由、命名视图、路由传参)
一.前言 在上一章的学习中,我们简单介绍了前端路由的概念,以及如何在 Vue 中通过使用 Vue Router 来实现我们的前端路由.但是在实际使用中,我们经常会遇到路由传参.或者一个页面是由多个组件 ...
- Vue.js 2.x笔记:路由Vue Router(6)
1. Vue Router简介与安装 1.1 Vue Router简介 Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,构建单页面应用. Vue Rout ...
- 前端MVC Vue2学习总结(八)——Vue Router路由、Vuex状态管理、Element-UI
一.Vue Router路由 二.Vuex状态管理 三.Element-UI Element-UI是饿了么前端团队推出的一款基于Vue.js 2.0 的桌面端UI框架,手机端有对应框架是 Mint U ...
- react router @4 和 vue路由 详解(六)vue怎么通过路由传参?
完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 8.vue怎么通过路由传参? a.通配符传参数 //在定义路由的时候 { path: ' ...
随机推荐
- BZOJ2565: 最长双回文串(回文树)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2565 记录一下每个点往前最长延伸位置,正反两遍,枚举分割点. #include<cstr ...
- hdu_2670Girl Love Value(dp)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2670 Girl Love Value Time Limit: 2000/1000 MS (Java/O ...
- 国寿e店/人寿云参会云助理,不去公司就能刷脸考勤打卡?
自从2017年3月平安保险公司实行E行销打卡考勤以来,保险增员迅猛增加,保险业绩也随之水涨船高.年底开始中国人寿保险也陆续开始实行app考勤,有些需要连接公司指定WiFi,或在指定地点方可打卡考勤.不 ...
- VS的无用文件
目录:C:\ProgramData\Microsoft Visual Studio\10.0\TraceDebugging 每次调试程序都会产生30MB左右大小的Debug文件.如何禁止? Tools ...
- 什么是MVC ?
记得第一次面试phper(php是对我来说可以快速上手的另一web开发语言),人家问我MVC,我只知道m就是model,v就是view,c就是Controller,具体把其它的认识我是一无所知,结果我 ...
- libJPEG-turbo库使用示例代码
libJPEG库是用于编码数据为JPEG格式或者解码JPEG格式图片的常用库,OpenCV读取图像底层实现就是利用libJPEG库,而libJPEG-turbo则效率更高. 具体怎么编译编译libJP ...
- 【编程技巧】JAVA读取url地址中的文本内容
应用场景:最常见的是有自已的网站,在注册广告联盟的时候.都需要下载一个文本文件来验证网站的有效性.例如淘宝.京东等都有这一过程 实现代码://读url地址的内容 public void ...
- 经典CSS坑:如何完美实现垂直水平居中?
经典CSS坑:如何完美实现垂直水平居中? 踩了各种坑之后总结出的方法,开门见山,直接上代码和效果图.希望对读者有所帮助,后续如果有更好的方法,我也会持续更新 第一种方法:transform(个人认为最 ...
- SQLServer分页查询模板
SELECT TOP 10 * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY id) AS RowNumber,* FROM ERPTelFile ) A WHE ...
- Shell中脚本变量的作用域
原文地址:http://blog.csdn.net/abc86319253/article/details/46341839 在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的 ...