提交 87e46b0f 编写于 作者: jlj05024111@163.com's avatar jlj05024111@163.com

feat: 更新下拉列表框支持自定义下拉项显示标签

上级 c19bcc99
...@@ -77,6 +77,16 @@ export const IBizDropdown = defineComponent({ ...@@ -77,6 +77,16 @@ export const IBizDropdown = defineComponent({
emit('operate', isOpen); emit('operate', isOpen);
}; };
// 自定义项显示标签
const customItemText = (item: IData) => {
if (item && Object.keys(item).length > 0) {
return c.customLabel.replace(/\$\{([^}]+)\}/g, (match, key) =>
Object.hasOwnProperty.call(item, key) ? item[key] : '',
);
}
return '';
};
return { return {
ns, ns,
c, c,
...@@ -87,6 +97,7 @@ export const IBizDropdown = defineComponent({ ...@@ -87,6 +97,7 @@ export const IBizDropdown = defineComponent({
onOpenChange, onOpenChange,
inputRef, inputRef,
onSelect, onSelect,
customItemText,
}; };
}, },
...@@ -135,7 +146,17 @@ export const IBizDropdown = defineComponent({ ...@@ -135,7 +146,17 @@ export const IBizDropdown = defineComponent({
}, },
[ [
this.items.map(item => { this.items.map(item => {
return <i-option value={item.value}>{item.text}</i-option>; return (
<i-option
value={item.value}
tag={item.text}
label={item.text}
>
{this.c.customLabel
? this.customItemText(item.data)
: item.text}
</i-option>
);
}), }),
], ],
), ),
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册