跳转到正文

@capgo/capacitor-transitions

无需采用 Ionic UI,即可为 Capacitor 应用添加原生感的路由过渡效果,并可选支持 iOS 边缘侧滑返回。

Ionic 风格动画

无需引入 Ionic 组件,即可使用模拟移动端导航模式的 iOS 和 Android 路由动画。

侧滑返回

启用跟随手指的 iOS 边缘手势,该手势仅在原生 Capacitor iOS 中可自动启用。

不限框架

直接使用 Web Components,或使用面向 React、Vue、Angular、Svelte 和 Solid 的辅助工具。

无 UI 锁定

自带工具栏、内容区、页脚和路由,由库协调转场层。

@capgo/capacitor-transitions 适用于希望获得 Ionic 级页面动效,但不想采用 Ionic 组件系统的应用。它让导航继续使用现有的 Web 路由,并在 Capacitor WebView 内为页面元素添加动画。

在以下场景中使用:

  • 贴近平台惯例的 push、pop 和根路由转场
  • 头部、内容区和页脚动效协调一致
  • 页面缓存,加快返回导航
  • 可选的 iOS 边缘侧滑返回手势,跟随手指移动
  • framework 专属的配置辅助函数,无需 framework 专属 router
React 页面转场动画演示:在 Capacitor 风格的外壳中展示前进和后退导航
React 转场流程
  • <cap-router-outlet> 管理动画路由栈。
  • <cap-page> 包裹每个页面。
  • <cap-header>, <cap-content>,以及 <cap-footer> 识别应同步移动的区域。
  • initTransitions(options?) 初始化 framework 绑定。
  • setDirection('forward' | 'back' | 'root' | 'none') 告知下一次路由更新应执行哪种动画。
  • setupRouterOutlet(element, options?) 将 outlet 与生命周期及手势行为连接。
  • setupPage(element, callbacks?) 注册页面生命周期回调。

platform="auto" 从运行时环境中选择 iOS 或 Android 动画配置。你可以强制 platform="ios" 或 platform="android" 进行测试时。

swipe-gesture="auto" 使用 Capacitor 运行时辅助工具,且仅在原生 iOS Capacitor 应用中启用边缘手势。使用 true 强制启用,或使用 false 将其禁用。

该手势在 Web 层实现。其设计旨在模拟 Ionic 的 iOS 滑动返回过渡效果:通过指针位置驱动动画进度,然后根据距离和速度完成或取消动画。

如果你正在使用 @capgo/capacitor-transitions 来规划原生媒体和界面行为,并将其与 使用 @capgo/capacitor-transitions 用于在使用 @capgo/capacitor-transitions 时调用原生能力, 使用 @capgo/capacitor-live-activities 用于使用 @capgo/capacitor-live-activities 时的原生能力, @capgo/capacitor-live-activities 在 @capgo/capacitor-live-activities 中的实现细节, 使用 @capgo/capacitor-video-player 有关使用 @capgo/capacitor-video-player 时的原生能力,以及 @capgo/capacitor-video-player 关于 @capgo/capacitor-video-player. 中的实现细节