You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MUI的Checkbox标签中拼接展示对象的两个属性值

解决方案

方法1:纯文本拼接(最简单实现)

直接修改FormControlLabel的label属性,用模板字符串拼接两个字段即可:

label={`${item.title} (${item.costs})`}

如果要适配costs字段为空的场景,避免生成空括号,可以加一层判断:

label={`${item.title}${item.costs ? ` (${item.costs})` : ''}`}

方法2:自定义样式标签(如果需要给费用部分加特殊样式)

MUI的label属性支持传入React节点,你可以自由控制两个字段的展示样式,比如把费用部分设为灰色小字:

label={
  <>
    {item.title}
    <span style={{ marginLeft: '4px', color: '#888', fontSize: '0.875rem' }}>
      ({item.costs})
    </span>
  </>
}

完整修改后的代码示例

<FormGroup>
  {data.map((item, index) => {
    return (
      <FormControlLabel
        key={index}
        control={<Checkbox />}
        // 可根据需求替换为上述任意一种拼接逻辑
        label={`${item.title} (${item.costs})`}
        name={item.title}
        value={item.title}
        onChange={() => handleChange(index)}
        disabled={disabledItems[index]}
        checked={checkedItems[index]}
        color="default"
      />
    )
  })}
</FormGroup>

内容的提问来源于stack exchange,提问作者Santi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 03:15:03