@jdcfe/yep-react
Version:
一套移动端的React组件库
91 lines (75 loc) • 3.94 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
var _typeof = require("@babel/runtime/helpers/typeof");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var React = _interopRequireWildcard(require("react"));
var _classnames = _interopRequireDefault(require("classnames"));
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
var dealPrice = function dealPrice(value) {
var decLength = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
var symbol = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '¥';
// 判断value的第一位是否是货币符号
if (value && !/^[0-9]*$/.test(value.substring(0, 1))) {
symbol = value.substring(0, 1); // 如果是货币符号,获取符号
value = value.substring(1); // 获取价格
} // 判断需要展示几位小数
value = parseFloat(value).toFixed(decLength);
var values = (value + '').split('.');
return {
symbol: symbol,
intVal: values[0],
decimalVal: values[1]
};
};
var Price = function Price(_ref) {
var prefixCls = _ref.prefixCls,
symPos = _ref.symPos,
decPos = _ref.decPos,
status = _ref.status,
className = _ref.className,
symClassName = _ref.symClassName,
intClassName = _ref.intClassName,
decClassName = _ref.decClassName,
value = _ref.value,
decLength = _ref.decLength,
currencySym = _ref.currencySym;
var cls = (0, _classnames.default)(className ? "".concat(className) : '', prefixCls, {
del: status === 'del'
});
var symCls = (0, _classnames.default)(symClassName ? "".concat(symClassName) : '', {
'sym-sub': symPos === 'sub',
'sym-sup': symPos === 'sup'
});
var intCls = (0, _classnames.default)(intClassName ? "".concat(intClassName) : '');
var decCls = (0, _classnames.default)(decClassName ? "".concat(decClassName) : '', {
'dec-sub': decPos === 'sub',
'dec-sup': decPos === 'sup'
});
var _dealPrice = dealPrice(value, decLength, currencySym),
symbol = _dealPrice.symbol,
intVal = _dealPrice.intVal,
decimalVal = _dealPrice.decimalVal;
return /*#__PURE__*/React.createElement("div", {
className: cls
}, /*#__PURE__*/React.createElement("span", {
className: "".concat(prefixCls, "-sym ").concat(symCls)
}, symbol), /*#__PURE__*/React.createElement("span", {
className: "".concat(prefixCls, "-txt int-txt ").concat(intCls)
}, intVal), !!decimalVal && /*#__PURE__*/React.createElement("span", {
className: "".concat(prefixCls, "-txt dec-txt ").concat(decCls)
}, ".", decimalVal));
};
Price.defaultProps = {
prefixCls: 'Yep-price',
style: {},
symbol: '¥',
symPos: 'sub',
decLength: 2,
decPos: 'sub'
};
var _default = Price;
exports.default = _default;
;