gui-one-nutui-react-taro
Version:
京东风格的轻量级移动端 React 组件库,支持一套代码生成 H5 和小程序
52 lines (51 loc) • 2.94 kB
JavaScript
import _defineProperty from "@babel/runtime/helpers/defineProperty";
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
var _excluded = ["size", "current", "block", "align", "fillZero", "children", "className", "vertical"];
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
import React__default, { useEffect } from 'react';
import classNames from 'classnames';
import { c as cn } from './bem-893ad28d.js';
var defaultProps = {
size: 3,
current: 1,
block: false,
align: 'center',
fillZero: true,
vertical: false
};
var Indicator = function Indicator(props) {
var _classNames;
var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
size = _defaultProps$props.size,
current = _defaultProps$props.current,
block = _defaultProps$props.block,
align = _defaultProps$props.align,
fillZero = _defaultProps$props.fillZero,
children = _defaultProps$props.children,
className = _defaultProps$props.className,
vertical = _defaultProps$props.vertical,
rest = _objectWithoutProperties(_defaultProps$props, _excluded);
var b = cn('indicator');
var classes = classNames((_classNames = {}, _defineProperty(_classNames, "".concat(b('block')), block), _defineProperty(_classNames, "".concat(b('align'), "__").concat(align), block && align), _defineProperty(_classNames, "".concat(b('vertical')), vertical), _classNames), b(''));
var renderEles = function renderEles() {
var childs = [];
for (var item = 1; item <= size; item++) {
childs.push(item === current ? React__default.createElement("div", {
key: item,
className: b('number')
}, fillZero && item < 10 ? "0".concat(item) : item) : React__default.createElement("div", {
key: item,
className: b('dot')
}));
}
return childs;
};
useEffect(function () {}, []);
return React__default.createElement("div", _objectSpread({
className: "".concat(classes, " ").concat(className)
}, rest), renderEles());
};
Indicator.defaultProps = defaultProps;
Indicator.displayName = 'NutIndicator';
export { Indicator as I };