UNPKG

syber-lowcode-business-materials

Version:
82 lines (78 loc) 2.68 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.changeRemNum = changeRemNum; exports["default"] = void 0; exports.getText = getText; exports.getTextStyleObj = getTextStyleObj; exports.tranNumber = tranNumber; var _react = _interopRequireDefault(require("react")); //获取文字渲染 function getText(textSet, innerText) { return /*#__PURE__*/_react["default"].createElement("div", { style: getTextStyleObj(textSet) }, innerText); } //根据字体样式配置对象生成 html内嵌样式 function getTextStyleObj(textSet) { if (!textSet) { return {}; } var styleObj = { display: 'inline-block', color: textSet.color, fontSize: changeRemNum(textSet, 'fontSize', 'sizeUnit'), fontWeight: textSet.fontBold ? 'bold' : 'normal', fontStyle: textSet.fontItalic ? 'italic' : 'normal' }; if (textSet.fontFamily && textSet.fontFamily !== 'default') { styleObj.fontFamily = textSet.fontFamily; } return styleObj; } //对携带rem单位的数据做转换 function changeRemNum(setObj, numField, unitField, remRate) { if (numField === void 0) { numField = 'num'; } if (unitField === void 0) { unitField = 'unit'; } if (remRate === void 0) { remRate = 15; } if (!setObj) { return '0px'; } return setObj[unitField] === 'rem' ? setObj[numField] / remRate + 'rem' : setObj[numField] + setObj[unitField]; } // num接收的数字,point保留数字的第几位 function tranNumber(num, point) { if (point === void 0) { point = 0; } // 将数字转换为字符串,然后通过split方法用.分隔,取到第0个 var numStr = num.toString().split('.')[0]; if (numStr.length < 6) { // 判断数字有多长,如果小于6,,表示10万以内的数字,让其直接显示 // console.log(numStr); return numStr; } else if (numStr.length >= 6 && numStr.length <= 8) { // 如果数字大于6位,小于8位,让其数字后面加单位万 var decimal = numStr.substring(numStr.length - 4, numStr.length - 4 + point); // console.log(decimal); // 由千位,百位组成的一个数字 return parseFloat(parseInt(num / 10000) + '.' + decimal) + '万'; } else if (numStr.length > 8) { // 如果数字大于8位,让其数字后面加单位亿 var _decimal = numStr.substring(numStr.length - 8, numStr.length - 8 + point); // console.log(decimal); return parseFloat(parseInt(num / 100000000) + '.' + _decimal) + '亿'; } } var _default = exports["default"] = { getText: getText, getTextStyleObj: getTextStyleObj, changeRemNum: changeRemNum, tranNumber: tranNumber };