vue-hooks-plus
Version:
Vue hooks library
35 lines (34 loc) • 1.27 kB
JavaScript
import useAutoRunPlugin from "./plugins/useAutoRunPlugin";
import useCachePlugin from "./plugins/useCachePlugin";
import useDebouncePlugin from "./plugins/useDebouncePlugin";
import useDevtoolsPlugin from "./plugins/useDevtoolsPlugin";
import useLoadingDelayPlugin from "./plugins/useLoadingDelayPlugin";
import usePollingPlugin from "./plugins/usePollingPlugin";
import useRefreshOnWindowFocusPlugin from "./plugins/useRefreshOnWindowFocusPlugin";
import useRetryPlugin from "./plugins/useRetryPlugin";
import useThrottlePlugin from "./plugins/useThrottlePlugin";
import useRequestImplement from "./useRequestImplement";
import { withArgs } from "./utils/resolve-args";
function useRequest(service, options, plugins) {
var _a;
const BuiltInPlugins = (_a = [
process.env.NODE_ENV === "development" ? useDevtoolsPlugin : null,
useDebouncePlugin,
useLoadingDelayPlugin,
usePollingPlugin,
useRefreshOnWindowFocusPlugin,
useThrottlePlugin,
useAutoRunPlugin,
useCachePlugin,
useRetryPlugin
]) == null ? void 0 : _a.filter(Boolean);
return withArgs(useRequestImplement, options == null ? void 0 : options.use)(
service,
options,
[...plugins || [], ...BuiltInPlugins]
);
}
export {
useRequest as default,
useRequest
};