push
推入新页面到页面栈顶部。
签名
tsx
function push(page: ReactNode | VNode): Promise<void>参数
| 参数 | 类型 | 说明 |
|---|---|---|
page | ReactNode | VNode | 要推入的页面组件 |
返回值
Promise<void> - 页面进入动画完成后 resolve。
示例
基础用法
tsx
import { push } from '@0x30/navigation-vue'
// 推入页面
push(<DetailPage />)tsx
import { push } from '@0x30/navigation-react'
// 推入页面
push(<DetailPage />)传递参数
tsx
import { push } from '@0x30/navigation-vue'
push(<DetailPage id={1} name="test" />)tsx
import { push } from '@0x30/navigation-react'
push(<DetailPage id={1} name="test" />)等待动画完成
tsx
import { push } from '@0x30/navigation-vue'
await push(<DetailPage />)
console.log('页面已完全进入')tsx
import { push } from '@0x30/navigation-react'
await push(<DetailPage />)
console.log('页面已完全进入')链式导航
tsx
import { push } from '@0x30/navigation-vue'
async function navigateToCheckout() {
await push(<CartPage />)
await push(<AddressPage />)
await push(<PaymentPage />)
}tsx
import { push } from '@0x30/navigation-react'
async function navigateToCheckout() {
await push(<CartPage />)
await push(<AddressPage />)
await push(<PaymentPage />)
}注意事项
- 推入的页面应该使用
NavPage、Page或SidePage包裹 - 推入页面会触发当前页面的
onWillDisappear和onDidDisappear - 推入页面会触发新页面的
onWillAppear和onDidAppear