UNPKG

@fle-ui/plus-goods-detail-drawer

Version:

@fle-ui/plus-goods-detail-drawer

81 lines 2.67 kB
import "antd/es/button/style"; import _Button from "antd/es/button"; import "antd/es/empty/style"; import _Empty from "antd/es/empty"; import "antd/es/typography/style"; import _Typography from "antd/es/typography"; import React from 'react'; import { ReloadOutlined } from '@ant-design/icons'; var Text = _Typography.Text; var EmptyState = function EmptyState(_ref) { var onRetry = _ref.onRetry, _ref$type = _ref.type, type = _ref$type === void 0 ? 'empty' : _ref$type, message = _ref.message, description = _ref.description; var getEmptyConfig = function getEmptyConfig() { switch (type) { case 'loading': return { image: _Empty.PRESENTED_IMAGE_SIMPLE, message: message || '正在加载商品详情...', description: description || '请稍候,正在获取商品信息', extra: null }; case 'error': return { image: _Empty.PRESENTED_IMAGE_SIMPLE, message: message || '加载失败', description: description || '获取商品详情时出现错误,请重试', extra: onRetry ? /*#__PURE__*/React.createElement(_Button, { type: "primary", icon: /*#__PURE__*/React.createElement(ReloadOutlined, null), onClick: onRetry }, "\u5237\u65B0") : null }; case 'empty': default: return { image: _Empty.PRESENTED_IMAGE_SIMPLE, message: message || '商品详情为空~', description: description || '当前商品暂无详细信息', extra: onRetry ? /*#__PURE__*/React.createElement(_Button, { type: "primary", icon: /*#__PURE__*/React.createElement(ReloadOutlined, null), onClick: onRetry }, "\u5237\u65B0") : null }; } }; var config = getEmptyConfig(); return /*#__PURE__*/React.createElement("div", { className: "goods-empty", style: { padding: '40px 20px', textAlign: 'center' } }, /*#__PURE__*/React.createElement(_Empty, { image: config.image, description: /*#__PURE__*/React.createElement("div", { style: { marginTop: 30 } }, /*#__PURE__*/React.createElement(Text, { style: { fontSize: 16, color: '#333' } }, config.message), /*#__PURE__*/React.createElement("br", null), /*#__PURE__*/React.createElement(Text, { type: "secondary", style: { fontSize: 14, paddingTop: 4, display: 'inline-block' } }, config.description)), style: { marginBottom: 16 } }, config.extra)); }; export default EmptyState;