reactjs - 如何将删除 (X) 按钮添加到 React-Select 中的自定义组件 MultiValue?

标签 reactjs react-select

目标是将图标添加到多选选项列表中,并在选择选项时显示该图标。我遇到的问题是“x”删除按钮丢失了。如何将其包含在我的自定义 MultiValue 中?

const customMultiValue = ({ props, data }) => {
  return (
    <div className='input-select'>
      <div className='input-select__multi-value'>
        {data.icon && <FontAwesomeIcon
          icon={data.icon.fa}
          color={data.color}
        />} <span>{data.label}</span>
      </div>
    </div>
  );
};

<Select
    isMulti
    closeMenuOnSelect={false}
    onChange={this.handleSetStatus}
    options={healthMonitoringStore.statuses}
    components={{ MultiValue: customMultiValue, Option: IconOption } }
    placeholder={'Filter Status'}
/>

missing X button

我尝试过使用 MultiValueRemove,但格式很奇怪,而且图标不可点击。

const customMultiValue = ({ props, data }) => {
  return (
    <div className='input-select' {...props}>
      <div className='input-select__multi-value'>
        {data.icon && <FontAwesomeIcon
          icon={data.icon.fa}
          color={data.color}
          fixedWidth />} <span>{data.label}</span>
        <components.MultiValueRemove {...props}></components.MultiValueRemove>
      </div>
    </div>
  );
};

unclickable remove button

不确定我的方向是否正确。

最佳答案

我自己修复了。

我需要 MultiValueLabel 而不是 MultiValue

关于reactjs - 如何将删除 (X) 按钮添加到 React-Select 中的自定义组件 MultiValue?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59572110/

相关文章:

unit-testing - 在 Jest 测试中获得 axios 响应后如何重新渲染

javascript - React Select 设置错误的值

reactjs - React-select 提交时defaultValue未定义

javascript - React-select:自定义控件不呈现选择组件

reactjs - 按下 Escape 键后的 event.stopPropagation() 从 react-select 的 v2 中移除

javascript - ReactJS 用不同的元素替换损坏的图像

javascript - 如何在 React 中动态更改按钮大小和颜色

node.js - 如何防止 Node 在我的 NextJS/Express 应用程序中将异常记录到控制台?

reactjs - 使用 Backbone View 作为 React 组件

react-select - 我如何确定哪些 react-select 样式键映射到哪些组件