vtils
Version:
一个面向业务的 JavaScript/TypeScript 实用程序库。
34 lines (32 loc) • 967 B
JavaScript
exports.__esModule = true;
exports.useScrollLoadMore = useScrollLoadMore;
var _react = require("react");
var _useLoadMore = require("./useLoadMore");
var _useReachBottom = require("./useReachBottom");
/**
* @public
*/
/**
* 滚动数据加载。
*
* @public
* @param service 数据加载服务
* @param deps 依赖,依赖若发生变化则从首页重新加载数据
* @param options 滚动选项
* @returns 返回结果
*/
function useScrollLoadMore(service, deps, options) {
if (options === void 0) {
options = {};
}
var loader = (0, _useLoadMore.useLoadMore)(service, deps);
var containerRef = (0, _useReachBottom.useReachBottom)(loader.loadMore, options.offset || 0);
(0, _react.useEffect)(function () {
if (options.containerRef && options.containerRef.current) {
;
containerRef.current = options.containerRef.current;
}
}, [options.containerRef && options.containerRef.current]);
return loader;
}
;