在之前的 Skyline|小程序页面转场动画 文章中,Skyline 支持了自定义路由,开发者可以根据业务的需求来自行编写页面转场动画。
文章发布之后,我们收到不少开发者的反馈,对于“半屏”打开的转场动画是十分常见的,希望官方可以内置该能力。
为了降低开发成本,从基础库 v3.1.0 开始,Skyline 预设了一些常见的路由动画效果~
routeType | 动画效果 |
---|---|
wx://bottom-sheet | 向上半屏弹窗,前一个页面不变 |
wx://upwards | 向上进入页面,前一个页面不变 |
wx://zoom | 放大进入页面,前一个页面不变 |
wx://cupertino-modal | 向上打开页面至胶囊下面的位置,前一个页面收缩下沉 |
wx://cupertino-modal-inside | 被 wx://cupertino-modal 打开的页面需要继续使用 wx://cupertino-modal 打开效果 |
wx://modal-navigation | 被 wx://cupertino-modal 或 wx://modal 打开的页面向左进入页面的效果,前一个页面不变 |
wx://modal | 向上打开页面至胶囊下面的位置,前一个页面不变 |
对于以上的 routeType,使用起来非常简单,因为动画效果已经由基础库内置了,所以开发者直接使用即可
// 演示使用 wx://modal 进入页面
wx.navigateTo({
url: 'xxx',
routeType: 'wx://modal'
})
让我们来看看动画效果吧~
1、向上半屏弹窗 & 向上进入页面 & 放大进入页面
除了默认的向左进入页面外,基础库内置了向上半屏弹窗 & 向上进入页面 & 放大进入页面 这几个动画效果,开发者可以根据业务自身情况来使用
2、向上打开页面至胶囊下面的位置
这个动画效果在原生 APP 中的使用十分常见,对于前一个页面的处理和后面页面打开的动画效果略有不同
我们先来看 wx://cupertino-modal 的路由效果(图左)向上打开页面至胶囊下面的位置,前一个页面收缩下沉
在使用 wx://cupertino-modal 打开的页面之后,有两种页面打开形式
· wx://cupertino-modal-inside(图中):新页面打开方式同 wx://cupertino-modal 一致
· wx://modal-navigation(图右):新页面向左进入,前一个页面不变
前一个页面的效果除了下沉收缩,也支持保持不变,使用起来就比较简单
使用 wx://modal 向上打开页面至胶囊下面的位置,前一个页面不变。新页面需要使用 wx://modal-navigation 向左进入,前一个页面不变
预设路由使用简单,直接在 wx.navigateTo 配置参数即可,如果想要更丰富、更多的自定义的路由效果,大家可以使用 自定义路由 来自行定制~
基础库版本有些高。还不敢贸然上😭
再稳定一点,新小程序开发就全部用skyline了
这个就肥肠溜了
这个太棒了!!!
你再稳定点,我可就用你了
基础库3.4.6,使用 routeType: "wx://modal" 没有任何效果,还是依然默认的从右向左推出。
什么原因呢?
wx.navigateTo({ url: "/pages/shopping/goods", routeType: "wx://modal" })
“前一个页面收缩下沉”这个效果,想要下拉关闭新页面,还是要自定义路由吧
skyline 分包里面使用模版会白屏