tntd
Version:
tntd是基于 TNT Design 设计体系的 React UI 组件库,主要用于研发企业级中后台产品。
43 lines (42 loc) • 1.45 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.makeRandomCode = makeRandomCode;
exports.normalizeColumns = normalizeColumns;
var _react = _interopRequireDefault(require("react"));
function _interopRequireDefault(e) {
return e && e.__esModule ? e : {
"default": e
};
}
function normalizeColumns(elements) {
var columns = [];
_react["default"].Children.forEach(elements, function (element) {
if (!_react["default"].isValidElement(element)) {
return;
}
var column = Object.assign({}, element.props);
if (element.key) {
column.key = element.key;
}
// eslint-disable-next-line @typescript-eslint/no-explicit-any
if (element.type && element.type.__ANT_TABLE_COLUMN_GROUP) {
column.children = normalizeColumns(column.children);
}
columns.push(column);
});
return columns;
}
// 生成随机数,首位是字母
function makeRandomCode() {
var num = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;
var numArr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
var charArr = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];
var arr = [].concat(numArr, charArr);
var code = charArr[Math.floor(Math.random() * charArr.length)];
for (var i = 0; i < num - 1; i++) {
code += "".concat(arr[Math.floor(Math.random() * arr.length)]);
}
return code;
}