UNPKG

@nutui/nutui-react

Version:

京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序

30 lines (29 loc) 1.39 kB
import { _ as __rest } from "./tslib.es6.js"; import React__default from "react"; import classNames from "classnames"; import { Loading1, Loading as Loading$1 } from "@nutui/icons-react"; import { C as ComponentDefaults } from "./typings.js"; const loadingMap = { circular: Loading1, spinner: Loading$1 }; const defaultProps = Object.assign(Object.assign({}, ComponentDefaults), { // 对比一下,个人感觉还是Loading1比较好看一些,所以用它作为了默认的loading图标 type: "circular", direction: "horizontal" }); const Loading = (props) => { const _a = Object.assign(Object.assign({}, defaultProps), props), { className, style, children, direction, icon } = _a, rest = __rest(_a, ["className", "style", "children", "direction", "icon"]); const classPrefix = "nut-loading"; const CurLoadingIcon = loadingMap[rest.type] || Loading1; return React__default.createElement( "div", { className: classNames(classPrefix, direction === "vertical" ? `${classPrefix}-vertical` : "", className), style }, React__default.createElement("div", { className: `${classPrefix}-icon-box` }, icon || React__default.createElement(CurLoadingIcon, { className: `${classPrefix}-icon` })), children ? React__default.createElement("div", { className: `${classPrefix}-text` }, children) : "" ); }; Loading.displayName = "NutLoading"; export { Loading as default };