javascript - React-select 不显示字段中选择的值

标签 javascript reactjs onchange react-select

我有一个 react-select 组件,我这样定义:

<Select
            id="portf"
            options={opts}
            onChange={value => portfolioSelector(value)}
            placeholder="Select Portfolio"
          />

使用 opts = [{label: any, value:1}, {label:Two, value:2}]

选择时的值通过 portfolioSelector 函数存储在状态中。问题是当我选择一个值时,它没有显示在选择字段中。我的主要组成部分是这样的:

const PortfolioSelector = ({
  opts,
  portfolioSelector
}) => {
  if (opts) {
    return (
      <div className="portfolio select-box">
        <label htmlFor="selectBox" className="select-box__label">
        Portfolio
        </label>
        <div className="select-box__container">
          <Select
            id="portf"
            options={opts}
            onChange={value => portfolioSelector(value)}
            placeholder="Select Portfolio"
          />
        </div>
        <div className="separator" />
      </div>
    );
  }
  return (
    <div>Loading</div>
  );
};

你知道为什么吗?

最佳答案

这是我使用的替代解决方案。

演示: https://codesandbox.io/s/github/mkaya95/React-Select_Set_Value_Example

import React, { useState } from "react";
import Select from "react-select";

export default function App() {
  const [selectedOption, setSelectedOption] = useState("none");
  const options = [
    { value: "none", label: "Empty" },
    { value: "left", label: "Open Left" },
    { value: "right", label: "Open Right" },
    {
      value: "tilt,left",
      label: "Tilf and Open Left"
    },
    {
      value: "tilt,right",
      label: "Tilf and Open Right"
    }
  ];
  const handleTypeSelect = e => {
    setSelectedOption(e.value);
  };

  return (
    <div>
      <Select
        options={options}
        onChange={handleTypeSelect}
        value={options.filter(function(option) {
          return option.value === selectedOption;
        })}
        label="Single select"
      />
    </div>
  );
}

关于javascript - React-select 不显示字段中选择的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43250854/

相关文章:

javascript - 在 JS 中每隔 XXms 检查一个值的变化是个好主意吗?

javascript - 0x800a138a - JavaScript 运行时错误 : Function expected

javascript - 将 React 组件与另一个组件包装在同一文件中

reactjs - 自定义钩子(Hook)和动态 useEffect 依赖

javascript - 从数组值创建 JavaScript 对象

javascript - 3 个复选框 1 独立于另一个需要 jquery 不将第一个作为集合的一部分

node.js - 使用 npm 链接符号链接(symbolic link) react 模块以进行本地开发会产生错误

javascript - 使用 React onClick() 时更改颜色

javascript - Keydown 脚本仅在将脚本代码放置在输入框下方时才起作用?

javascript - 在 AngularJS 服务中使用 $http 回调