UNPKG

taro-hooks

Version:
29 lines (28 loc) 982 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 shared_1 = require("@taro-hooks/shared"); var usePromise_1 = tslib_1.__importDefault(require("../usePromise")); function useManualPullDownRefresh() { var timer = (0, core_1.useRef)(); var startAsync = (0, usePromise_1["default"])(taro_1.startPullDownRefresh); var stop = (0, usePromise_1["default"])(taro_1.stopPullDownRefresh); var start = function start(duration) { timer.current && clearTimeout(timer.current); return startAsync().then(function (res) { if ((0, shared_1.isNumber)(duration) && duration) { timer.current = setTimeout(function () { stop(); timer.current && clearTimeout(timer.current); }, duration); } return res; }); }; return [start, stop]; } exports["default"] = useManualPullDownRefresh;