vue-router: 路由传参
2018-01-24 11:03
696 查看
在设置路由规则时,我们可以给路径名设置一个别名,方便进行路由跳转,而不需要去
记住过长的全路径。例如:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>routerTest1</title>
<c:import url="importFile.jsp"></c:import>
</head>
<body>
<div id="app">
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">Brand</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<%--定义跳转的路径--%>
<li class="active"> <router-link to="/home">Home</router-link></li>
<li> <router-link to="/list">List</router-link></li>
</ul>
</div>
</div>
</nav>
<div class="container">
<!—路由切换组件template 插入的位置 -->
<router-view></router-view>
</div>
</div>
<template id="users">
<div class="container">
<h1> this is list page----{{$route.path}}</h1>
<h2>用户信息</h2>
<router-link to="/list/user/001">用户{{$route.params.id}}</router-link>
<router-link to="/list/user/002">用户{{$route.params.id}}</router-link>
</div>
</template>
<script type="x-template" id="modalTel">
<div>
<h1> this is home page </h1>
<div>
<ul >
<li>
<router-link to="/home/lists">List</router-link>
</li>
<li>
<router-link to="/home/detail">Detail</router-link>
</li>
</ul>
</div>
<router-view></router-view>
</div>
</script>
<script>
/*
* var
af2c
Home = Vue.extend({
template:'<h1> this is home page </h1>',
})
* */
/*使用Javascript模板定义组件*/
var Home = Vue.extend({
template:'#modalTel'
})
/*创建路由器实例*/
const router = new VueRouter({
routes:[
{ path: '/', redirect: '/home' },
{
path:'/home',
component:Home,
/*嵌套下的路由(子路由)*/
children:[
{
path:'/home/lists',
component:{
template:'<h1> this is lists pages</h1>'
},
},
{
path:'/home/detail',
component:{
template:'<h1> this is detail pages</h1>'
},
}
]
},
{
path:'/list',
component:{
/*显示路由的属性*/
template:'#users',
},
},
{
path:'/list/user/:id',
component:{
template: '<h3>用户Id{{$route.params.id}} </h3>'
}
}
]
});
const app = new Vue({
router:router
}).$mount('#app')
</script>
</body>
</html>
上文中的 importFile,jsp 在上一篇路由基本用法中介绍过了,就是引入需要的文件。http://blog.csdn.net/m0_37479246/article/details/79146951;
记住过长的全路径。例如:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>routerTest1</title>
<c:import url="importFile.jsp"></c:import>
</head>
<body>
<div id="app">
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<a class="navbar-brand" href="#">Brand</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<%--定义跳转的路径--%>
<li class="active"> <router-link to="/home">Home</router-link></li>
<li> <router-link to="/list">List</router-link></li>
</ul>
</div>
</div>
</nav>
<div class="container">
<!—路由切换组件template 插入的位置 -->
<router-view></router-view>
</div>
</div>
<template id="users">
<div class="container">
<h1> this is list page----{{$route.path}}</h1>
<h2>用户信息</h2>
<router-link to="/list/user/001">用户{{$route.params.id}}</router-link>
<router-link to="/list/user/002">用户{{$route.params.id}}</router-link>
</div>
</template>
<script type="x-template" id="modalTel">
<div>
<h1> this is home page </h1>
<div>
<ul >
<li>
<router-link to="/home/lists">List</router-link>
</li>
<li>
<router-link to="/home/detail">Detail</router-link>
</li>
</ul>
</div>
<router-view></router-view>
</div>
</script>
<script>
/*
* var
af2c
Home = Vue.extend({
template:'<h1> this is home page </h1>',
})
* */
/*使用Javascript模板定义组件*/
var Home = Vue.extend({
template:'#modalTel'
})
/*创建路由器实例*/
const router = new VueRouter({
routes:[
{ path: '/', redirect: '/home' },
{
path:'/home',
component:Home,
/*嵌套下的路由(子路由)*/
children:[
{
path:'/home/lists',
component:{
template:'<h1> this is lists pages</h1>'
},
},
{
path:'/home/detail',
component:{
template:'<h1> this is detail pages</h1>'
},
}
]
},
{
path:'/list',
component:{
/*显示路由的属性*/
template:'#users',
},
},
{
path:'/list/user/:id',
component:{
template: '<h3>用户Id{{$route.params.id}} </h3>'
}
}
]
});
const app = new Vue({
router:router
}).$mount('#app')
</script>
</body>
</html>
上文中的 importFile,jsp 在上一篇路由基本用法中介绍过了,就是引入需要的文件。http://blog.csdn.net/m0_37479246/article/details/79146951;
相关文章推荐
- vue-router: 路由传参
- 浅谈vue-router 路由传参的方法
- Vue中的 this.$router.push() 参数获取 (通过路由传参)
- Vue学习第二天 vue-router: 路由传参
- vue-router: 路由传参
- Vue--router---->路由调试传参
- VueJs(11)---vue-router(命名路由,命名视图,重定向别名,路由组件传参)
- vue.js用vue-router路由传参时页面刷新后参数消失的问题
- vue-router菜鸟进阶!(路由组件传参 vs H5 History模式)
- vue2.0环境搭建(含router路由)
- react路由的使用方法以及通过路由如何传参传递私有属性--【基于最新版本的react-router-dom(4.2.2)】
- vue-router 路由
- vue+vue-router+vuex,利用vue-router2.2.0新增特性addRoutes实现路由动态加载,菜单动态加载,运用于后台管理系统,路由数据取自数据库
- vue-router params无法传参的问题
- vue router学习——动态路由和嵌套路由
- Vue路由--router(未完待续)
- 实例讲解Vue.js中router传参
- vue刷新当前路由:router-view 复用组件时不刷新的3种解决方案总结
- vue-router路由
- 路由vue-router基础