gpt4 book ai didi

reactjs - 更改 react 选择中选定的值组件

转载 作者:行者123 更新时间:2023-12-03 04:22:10 24 4
gpt4 key购买 nike

有什么方法可以更改选定的值组件设计,在我的选项菜单中,我显示 CscId 和 CscDesc,但当我选择该选项时,我只想仅显示 CscId。有什么办法可以更改选定的值组件吗?我用谷歌搜索这个,已经花了 1 天的时间。请帮助我。

enter image description here

这是我的 react 选择

import React  from "react";
import Select from 'react-select';

const costcenterselect = ({ value, onChange, id, datasource }) => {
const formatOptionLabel = ({ CscID, CscDesc }) => (
<div style={{ display: "flex"}}>
<div style={{width:'40%'}}>{CscID}</div>
<div>{CscDesc}</div>
</div>
);

return (
<div>
<Select
id={id}
menuIsOpen={true}
formatOptionLabel={formatOptionLabel}
getOptionValue={option => `${option.CscID}`}
options={datasource}
onChange={onChange}
defaultValue={value}
/>
</div>
)
}

export default costcenterselect;

最佳答案

您可以使用formatOptionLabel本身来完成此操作。它有第二个参数,它为您提供元信息,例如 context ,您可以使用它来有条件地渲染。这是working demo .

您可以看到,context === value 允许您呈现选定的值,而 context === menu 则呈现选项。

const formatOptionLabel = ({ CscID, CscDesc }, { context }) => {
if (context === "value") {
return <div>{CscID}</div>;
} else if (context === "menu") {
return (
<div style={{ display: "flex" }}>
<div style={{ width: "40%" }}>{CscID}</div>
<div>{CscDesc}</div>
</div>
);
}
};

关于reactjs - 更改 react 选择中选定的值组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57283986/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com