pnpm install @0x30/vue-navigation
component 方式
import { Navigator } from '@0x30/vue-navigation'
createApp(
<Navigator>
<Home />
</Navigator>
).mount('#app')
plugin 方式
import { navigation } from '@0x30/vue-navigation'
createApp(<Home />)
.use(navigation)
.mount('#app')
import { push, replace, to } from '@0x30/vue-navigation'
/**
* 推出 一个 div 到当前之上
*/
push(<div />)
/**
* replace 当前
*/
replace(<div />)
/**
* repace 与 push 的辅助方式
*/
to(true)(<div />)
返回
import { back, blackBoxBack, backToHome } from '@0x30/vue-navigation'
/**
* 返回方法
*/
back()
/**
* 黑箱返回
* 当页面前往 一个页面后 可以移除掉一些之前的页面
*
* a -> b -> c -> d
* blackBoxBack(2)
* a -> d
*/
blackBoxBack()
/**
* 回到rootView
*/
backToHome()
-
onWillAppear
页面即将出现,执行动画之前 -
onDidAppear
页面已经出现,执行动画完成 -
onWillDisappear
页面即将消失,执行动画之前 -
onDidDisappear
页面已经消失,执行动画完成 -
useTransitionEnter
进入动画配置 -
useTransitionLeave
离开动画配置 -
useLeaveBefore
页面返回之前的拦截方法 -
useQuietPage
设置当前页面为安静的页面 -
usePageMate
配置当前页面的 基础信息 -
getCurrentPageMate
获取当前页面的 配置信息 -
onPageChange
当前发生变化 -
useProgressExitAnimated
配置渐进式动画
- 此库不是
router
,只是一种管理组件的方式 - 此库所有页面均活跃,这不是内存泄漏,这符合ios视图导航的设计
- 此库没有路由表,没有嵌套路由
- 此库假定所有的页面组件均为
fixed
,且大小与屏幕一致 - 此库只适用于极小众的项目,比如: 混合开发app内嵌的h5app