UNPKG

@td-design/rn-hooks

Version:

从ahooks里面抽取的一些在rn项目里可以使用的hooks。提高开发效率

42 lines (38 loc) 1.08 kB
'use strict'; var react = require('react'); var useLoadingDelayPlugin = function (fetchInstance, _a) { var loadingDelay = _a.loadingDelay, ready = _a.ready; var timerRef = react.useRef(); if (!loadingDelay) return {}; var cancelTimeout = function () { if (timerRef.current) { clearTimeout(timerRef.current); } }; return { onBefore: function () { cancelTimeout(); // Two cases: // 1. ready === undefined // 2. ready === true if (ready !== false) { timerRef.current = setTimeout(function () { fetchInstance.setState({ loading: true, }); }, loadingDelay); } return { loading: false, }; }, onCancel: function () { cancelTimeout(); }, onFinally: function () { cancelTimeout(); }, }; }; exports.useLoadingDelayPlugin = useLoadingDelayPlugin;