Vue-Router2.0教程
2023-09-27 14:29:06 时间
vue2.0 路由:
http://router.vuejs.org/zh-cn/index.html
基本使用:
-
布局
<router-link to="/home">主页</router-link><router-view></router-view>
-
路由具体写法
//组件
var Home={template:'<h3>我是主页</h3>'
};
var News={template:'<h3>我是新闻</h3>'
};
//配置路由
const routes=[{path:'/home', componet:Home}, {path:'/news', componet:News},
];
//生成路由实例
const router=new VueRouter({routes
});
//最后挂到vue上
new Vue({router, el:'#box'
});
- 重定向
之前 router.rediect 废弃了
{path:'*', redirect:'/home'}
路由嵌套:
/user/username
const routes=[
{path:'/home', component:Home},
{
path:'/user',
component:User,
children:[ //核心
{path:'username', component:UserDetail}
]
},
{path:'*', redirect:'/home'} //404
];
/user/strive/age/10 :id:username:age
路由实例方法:
router.push({path:'home'}); //直接添加一个路由,表现切换路由,本质往历史记录里面添加一个
router.replace({path:'news'}) //替换路由,不会往历史记录里面添加
<body>
<div id="box">
<div>
<router-link to="/home">主页</router-link>
<router-link to="/news">新闻</router-link>
</div>
<div>
<router-view></router-view>
</div>
</div>
<script>
//组件
var Home={
template:'<h3>我是主页</h3>'
};
var News={
template:'<h3>我是新闻</h3>'
};
//配置路由
const routes=[
{path:'/home', component:Home},
{path:'/news', component:News},
{path:'*', redirect:'/home'}
];
//生成路由实例
const router=new VueRouter({
routes
});
//最后挂到vue上
new Vue({
router,
el:'#box'
});
</script>
</body>
<body>
<div id="box">
<div>
<router-link to="/home">主页</router-link>
<router-link to="/news">新闻</router-link>
</div>
<div>
<router-view></router-view>
</div>
</div>
<script>
//组件
var Home={
template:'<h3>我是主页</h3>'
};
var News={
template:'<h3>我是新闻</h3>'
};
//配置路由
const routes=[
{path:'/home', component:Home},
{path:'/news', component:News},
{path:'*', redirect:'/home'}
];
//生成路由实例
const router=new VueRouter({
routes
});
//最后挂到vue上
new Vue({
router,
el:'#box'
});
</script>
</body>
<body>
<div id="box">
<div>
<router-link to="/home">主页</router-link>
<router-link to="/user">用户</router-link>
</div>
<div>
<router-view></router-view>
</div>
</div>
<script>
//组件
var Home={
template:'<h3>我是主页</h3>'
};
var User={
template:`
<div>
<h3>我是用户信息</h3>
<ul>
<li><router-link to="/user/username">某个用户</router-link></li>
</ul>
<div>
<router-view></router-view>
</div>
</div>
`
};
var UserDetail={
template:'<div>我是XX用户</div>'
};
//配置路由
const routes=[
{
path:'/home',
component:Home
},
{
path:'/user',
component:User,
children:[
{
path:'username',
component:UserDetail
}
]
},
{path:'*', redirect:'/home'} //404
];
//生成路由实例
const router=new VueRouter({
routes
});
//最后挂到vue上
new Vue({
router,
el:'#box'
});
</script>
</body>
<body>
<div id="box">
<div>
<router-link to="/home">主页</router-link>
<router-link to="/user">用户</router-link>
</div>
<div>
<router-view></router-view>
</div>
</div>
<script></script>
</body>
<body>
<div id="box">
<input type="button" value="添加一个路由" @click="push">
<input type="button" value="替换一个路由" @click="replace">
<div>
<router-link to="/home">主页</router-link>
<router-link to="/user">用户</router-link>
</div>
<div>
<router-view></router-view>
</div>
</div>
<script></script>
</body>
相关文章
- (尚014)Vue过渡与动画
- 微信小程序 - 父组件调用子组件的函数方法(像 Vue.js 中 ref 属性一样,直接 this.$refs.xx 获取子组件数据和方法)详细教程示例代码
- Vue - 最新网页 H5 分享到微信朋友圈 / 转发分享给朋友好友 / 分享到手机 QQ / 分享到 QQ 空间,Vue.js Nuxt.js 通用公众号页面解决方案(超级详细教程)
- Vue - 修改 data 数据不变 / 视图也不变(监测不到 data 数据变化 / 双向绑定失效)
- Vue项目--尚品汇(购物车页面的一些操作(修改数量,勾选,删除等))
- Vue-cli3 简qian易yi教程
- vue.js学习记录
- vue-cli 使用 webpack-bundle-analyzer
- 关于Vue中main.js,App.vue,index.html之间关系进行总结
- vue从入门到进阶:渲染函数 & JSX(八)
- vue组件---动态组件之多标签页面
- 【Vue】Mock.js的使用教程,入门级(附代码和案例)
- Vue+Echarts监控大屏实例十一:智慧养老监控模板实例
- vue组件通信大总结
- Vue.JS 对比其他框架
- [js高手之路] vue系列教程 - 绑定class与行间样式style(6)
- [js高手之路] vue系列教程 - 绑定设置属性的多种方式(5)
- [js高手之路] vue系列教程 - 实现留言板todolist(3)
- Win10:SpringBoot+Vue+Nginx前后端分离
- Vue的7种事件修饰符的使用
- Vue开发实例(10)之Link 文字链接