mobile-more
Version:
基于 antd-mobile v5 扩展移动端 UI 组件
66 lines (65 loc) • 3.01 kB
JavaScript
"use strict";
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = exports.ScrollLoadView = void 0;
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
var React = _interopRequireWildcard(require("react"));
var _antdMobile = require("antd-mobile");
var _classnames = _interopRequireDefault(require("classnames"));
var _config = require("../../config");
var _BizConfigProvider = require("../BizConfigProvider");
require("./index.css");
var _excluded = ["loading", "error", "done", "showLoadingIcon", "text", "className"];
var prefixCls = "".concat(_config.prefixClass, "-scrollLoadView");
var BizScrollLoadView = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
var _ref$loading = _ref.loading,
loading = _ref$loading === void 0 ? false : _ref$loading,
_ref$error = _ref.error,
error = _ref$error === void 0 ? false : _ref$error,
_ref$done = _ref.done,
done = _ref$done === void 0 ? false : _ref$done,
_ref$showLoadingIcon = _ref.showLoadingIcon,
showLoadingIcon = _ref$showLoadingIcon === void 0 ? true : _ref$showLoadingIcon,
text = _ref.text,
className = _ref.className,
restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
var _useConfig = (0, _BizConfigProvider.useConfig)(),
locale = _useConfig.locale;
var textObj = React.useMemo(function () {
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, locale.scrollLoadView), text);
}, [text, locale.scrollLoadView]);
var _React$useMemo = React.useMemo(function () {
var view = textObj.default;
var status = 'default';
if (loading) {
status = 'loading';
view = /*#__PURE__*/React.createElement(React.Fragment, null, textObj.loading, showLoadingIcon && /*#__PURE__*/React.createElement(_antdMobile.DotLoading, null));
} else if (error) {
status = 'error';
view = textObj.error;
} else if (done) {
status = 'done';
view = textObj.done;
}
return {
view: view,
status: status
};
}, [done, error, loading, showLoadingIcon, textObj]),
view = _React$useMemo.view,
status = _React$useMemo.status;
return /*#__PURE__*/React.createElement("div", (0, _objectSpread2.default)({
className: (0, _classnames.default)(prefixCls, "".concat(prefixCls, "-").concat(status), className),
ref: ref
}, restProps), view);
});
BizScrollLoadView.displayName = 'BizScrollLoadView';
/**
* @deprecated 即将废弃,请使用 `BizScrollLoadView` 替代。
*/
var ScrollLoadView = exports.ScrollLoadView = BizScrollLoadView;
var _default = exports.default = BizScrollLoadView;