UNPKG

taro-hooks

Version:
24 lines (23 loc) 889 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var taro_1 = require("@tarojs/taro"); var core_1 = require("@taro-hooks/core"); var usePromise_1 = tslib_1.__importDefault(require("../usePromise")); var tool_1 = require("../utils/tool"); function useModal(option) { var generalOption = (0, core_1.useRef)(option); (0, core_1.useEffect)(function () { generalOption.current = option; }, [option]); var showModalAsync = (0, usePromise_1["default"])(taro_1.showModal); var show = function show(option) { if (!option && !generalOption.current) return Promise.reject((0, tool_1.generateGeneralFail)('showModal', 'please provide a option')); var modalOption = (0, tool_1.combineOptions)(generalOption.current, option); return showModalAsync(modalOption); }; return show; } exports["default"] = useModal;