UNPKG

@remax/framework-shared

Version:

使用真正的 React 构建跨平台小程序

38 lines (37 loc) 1.59 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.useAppEvent = exports.usePageInstance = exports.useComponentInstance = exports.usePageEvent = void 0; var react_1 = require("react"); var lifecycle_1 = require("./lifecycle"); var PageInstanceContext_1 = __importDefault(require("./PageInstanceContext")); var ComponentInstanceContext_1 = __importDefault(require("./ComponentInstanceContext")); var AppInstanceContext_1 = __importDefault(require("./AppInstanceContext")); function usePageEvent(eventName, callback) { var pageInstance = react_1.useContext(PageInstanceContext_1.default); var lifeCycle = lifecycle_1.lifeCycleName(eventName); react_1.useLayoutEffect(function () { return lifecycle_1.registerLifecycle(pageInstance, lifeCycle, callback); }); } exports.usePageEvent = usePageEvent; function useComponentInstance() { return react_1.useContext(ComponentInstanceContext_1.default); } exports.useComponentInstance = useComponentInstance; function usePageInstance() { return react_1.useContext(PageInstanceContext_1.default); } exports.usePageInstance = usePageInstance; /** * App Hooks */ function useAppEvent(eventName, callback) { var lifeCycle = lifecycle_1.lifeCycleName(eventName); react_1.useLayoutEffect(function () { return lifecycle_1.registerLifecycle(AppInstanceContext_1.default, lifeCycle, callback); }); } exports.useAppEvent = useAppEvent;