Chuyển tới nội dung chính

Page

Page component hiển thị nội dung trang, khi app có định tuyến, chia ra nhiều routes, mỗi Page sẽ ứng với một route cụ thể, các route được khởi tạo mặc định trong App ( đọc từ trường pages trong file app-config.json) hoặc routes khai báo trong View

Page Properties

PropTypeDefaultDescription
namestringPage name
stackedbooleanBật cho trang hiện đang không active khi sử dụng stackedPages Router parameter sẽ giữ tất cả trang trên DOM
pageContentbooleantrueKhi bật sẽ tự động thêm page-content element bên trong page element. Set bằng false khi sử dụng page-content elements cho tabs
tabsbooleanBật nếu sử dụng page giống như một Tabs wrapper
noSwipebackbooleanTắt tính năng swipeback cho trang hiện tại (Trên IOS)
withSubnavbarbooleanBật khi trang có sử dụng Sub Navbar
noNavbarbooleanBật khi sử dụng chung Navbar layout và muốn ẩn Navbar chung (Hoặc sử dụng một Navbar khác) trên trang
noToolbarbooleanBật khi sử dụng chung Toolbar/Tabbar layout và muốn ẩn Navbar chung (Hoặc sử dụng một Toolbar/Tabbar khác) trên trang
hideBarsOnScrollbooleanẨn Navbar & Toolbar khi cuộn trang
hideNavbarOnScrollbooleanẨn Navbar khi cuộn trang
hideToolbarOnScrollbooleanẨn Toolbar khi cuộn trang
ptrbooleanBật Pull To Refresh
ptrDistancenumberTùy chỉnh pull to refresh khoảng cách trigger. Mặc định là 44px.
ptrPreloaderbooleantrueTắt nếu muốn tắt preloader
ptrBottombooleanfalseBật pull to refresh từ cuối trang
infinitebooleanBật Infinite Scroll
infiniteTopbooleanBật infinite scroll tại đầu trang
infiniteDistancenumberKhoảng cách từ cuối trang (tính theo px) sẽ trigger infinite scroll event. Mặc định là 50px
infinitePreloaderbooleantrueTắt nếu muốn tắt preloader

Page Events

EventPropDescription
pageMountedonPageMountedEvent sẽ được triggered khi trang với keepAlive route được mounted/attached vào DOM
pageInitonPageInitEvent sẽ được triggered sau khi Zalo Mini App khởi tạo các components được yêu cầu và navbar
pageReinitonPageReinitEvent sẽ được triggered trong trường hợp chuyển đến trang đã được khởi tạo.
pageBeforeInonPageBeforeInEvent sẽ được triggered khi tất cả mọi thứ đã được khởi tạo và trang sẵn sàng chuyển sang view
pageAfterInonPageAfterInEvent sẽ được triggered sau khi trang được chuyển sang view
pageBeforeOutonPageBeforeOutEvent sẽ được triggered ngay trước khi trang sẽ chuyển ra khỏi view
pageAfterOutonPageAfterOutEvent sẽ được triggered sau khi trang sẽ chuyển ra khỏi view
pageBeforeUnmountonPageBeforeUnmountEvent sẽ được triggered khi trang với keepAlive route được unmounted/detached khỏi DOM
pageBeforeRemoveonPageBeforeRemoveEvent sẽ được triggered ngay trước khi trang bị xóa khỏi DOM. Sử dụng khi detach các events / destroy các plugins giúp giải phóng vùng nhớ. Event sẽ không triggered trên keepAlive routes.
pageTabShowonPageTabShowEvent sẽ được triggered khi component cha Tab View của trang xuất hiện
pageTabHideonPageTabHideEvent sẽ được triggered Khi component cha Tab View của trang ẩn đi
ptrPullStartonPtrPullStartEvent sẽ được triggered when you start to move pull to refresh content
ptrPullMoveonPtrPullMoveEvent sẽ được triggered trong khi người dùng kéo để tải lại nội dung
ptrPullEndonPtrPullEndEvent sẽ được triggered khi người dùng thả ra để tải lại nội dung
ptrRefreshonPtrRefreshEvent sẽ được triggered khi pull to refresh chuyển sang trạng thái "refreshing"
ptrDoneonPtrDoneEvent sẽ được triggered sau khi pull to refresh thực hiện xong và trở về trạng thái ban đầu
infiniteonInfiniteEvent sẽ được triggered khi trang đựợc cuộn tới vị trí đã được khai báo sẽ trigger event

Page Slots

Page React component (<Page/>) hỗ trợ các slots giúp tùy chỉnh component:

  • default - element element sẽ được thêm dưới dạng child của "page-content" element khi page-content prop được bật (mặc định)
  • fixed- element sẽ được chèn dưới dạng phần tử con trực tiếp của "page" ngay trước "page-content" element
<Page>
<div slot='fixed'>Fixed element</div>
<p>Page content goes here</p>
</Page>;

{
/* Render thành: */
}

<div className='page'>
<div>Fixed element</div>
<div className='page-content'>
<p>Page content goes here</p>
</div>
</div>;

Ví dụ

Infinite Scroll

Code demo fallback when rendering server side!

Pull To Refresh

Code demo fallback when rendering server side!