vue-router 是 Vue 官方的路由管理器,用法简单、功能强大。但在移动端场景中,特别是 hybrid 项目,咱们在使用中遇到了一些问题。vue
咱们先理顺一下客户端路由管理器的一般特色,能够打开手机的设置 App 感觉一下:git
所以在面向移动端的产品中,用户的操做习惯、产品的设计理念也大多趋同于以上几点。但咱们从 vue-router 的角度再来审视这几个点,就会发下有这几个问题:github
keep-alive
组件。而在移动端,大部分栈式路由的场景,PageA 跳转到 PageB,A 和 B 实例都是存活的,当 PageB 返回 PageA,A 存活而 B 被销毁,显然 vue-router 没法知足这个场景。因而咱们开始在社区中寻找解决方案,但遗憾的是大多方案都是基于 vue-router
的二次开发,而且都不知足需求和有一些 Bug。所以咱们基于栈的理念开发了,针对移动端应用开发了 vue-stack-router
。vue-router
先放上效果图以及基于它实现的滑动返回。设计
相较于 vue-router
, vue-stack-router
有如下特色:code
beforeRouteUpdate
)具体文档见 vue-stack-router , 相较于 vue-router
,vue-stack-router
的功能在一些方面依然不够完善和强大,也但愿感兴趣的同窗能一块儿来完善这个库。放上 github 地址 github.com/luojilab/vu… ,欢迎 pr/Issues/star。router
后续文章会解析整个 vue-stack-router
设计和实现过程,欢迎你们关注。cdn