page.js 2.0 KB

123456789101112131415161718192021222324252627282930313233
  1. import { functionalMiniElement } from './element.js';
  2. import { ETargetPlatform, EElementType } from './types.js';
  3. import { getLifeCycleHooks } from './hooks.js';
  4. import { alipayPageEvents } from './platform.js';
  5. export function alipayPage(element) {
  6. return functionalMiniElement(element, '', EElementType.page, {}, ETargetPlatform.alipay);
  7. }
  8. export function wechatPage(element) {
  9. return functionalMiniElement(element, '', EElementType.page, {}, ETargetPlatform.wechat);
  10. }
  11. // 公共生命周期
  12. /**
  13. * 不暴露 useOnLoad , 使用 useEffect 代替
  14. */
  15. export var useOnShow = getLifeCycleHooks('onShow');
  16. export var useOnReady = getLifeCycleHooks('onReady');
  17. export var useOnHide = getLifeCycleHooks('onHide');
  18. export var useOnPullDownRefresh = getLifeCycleHooks('onPullDownRefresh');
  19. export var useOnReachBottom = getLifeCycleHooks('onReachBottom');
  20. export var useOnShareAppMessage = getLifeCycleHooks('onShareAppMessage', true);
  21. export var useOnPageScroll = getLifeCycleHooks('onPageScroll');
  22. export var useOnTabItemTap = getLifeCycleHooks('onTabItemTap');
  23. export var useOnResize = getLifeCycleHooks('onResize');
  24. // 支付宝端特有
  25. export var useOnTitleClick = getLifeCycleHooks(alipayPageEvents.onTitleClick, undefined, ETargetPlatform.alipay);
  26. export var useOnOptionMenuClick = getLifeCycleHooks(alipayPageEvents.onOptionMenuClick, undefined, ETargetPlatform.alipay);
  27. export var useBeforeTabItemTap = getLifeCycleHooks(alipayPageEvents.beforeTabItemTap, undefined, ETargetPlatform.alipay);
  28. export var useOnKeyboardHeight = getLifeCycleHooks(alipayPageEvents.onKeyboardHeight, undefined, ETargetPlatform.alipay);
  29. export var useOnBack = getLifeCycleHooks(alipayPageEvents.onBack, undefined, ETargetPlatform.alipay);
  30. export var useOnSelectedTabItemTap = getLifeCycleHooks(alipayPageEvents.onSelectedTabItemTap, undefined, ETargetPlatform.alipay);
  31. export var useBeforeReload = getLifeCycleHooks(alipayPageEvents.beforeReload, undefined, ETargetPlatform.alipay);
  32. export * from './export-hooks.js';
  33. export { usePage } from './hooks.js';