UNPKG

@td-design/react-native-picker

Version:

基于 @td-design/react-native 的 picker 组件

43 lines (42 loc) 1.16 kB
/** * 根据value,返回对应的label * @param data 数据 * @param value 选中的值 * @param cascade 是否级联 * @returns 值对应的文本 */ export function transformValueToLabel(data, value, cascade, hyphen) { if (!value) return undefined; if (!cascade) { var _data$find; return (_data$find = data.find(item => item.value === value)) === null || _data$find === void 0 ? void 0 : _data$find.label; } return value.map(val => { var _findByValue; return (_findByValue = findByValue(data, val)) === null || _findByValue === void 0 ? void 0 : _findByValue.label; }).join(hyphen); } /** * 根据value从一个级联数组中查找节点 * @param data * @param value * @returns */ function findByValue(data, value) { let selectedItem = undefined; function recursion(list, value) { if (!list) return; for (let i = 0; i < list.length; i++) { if (list[i].value === value) { selectedItem = list[i]; break; } if (list[i].children) { recursion(list[i].children, value); } } } recursion(data, value); return selectedItem; } //# sourceMappingURL=utils.js.map