用formik设置字段值,从外部按钮中反应选择组件。

问题描述 投票:0回答:1

我有一个formik表格,其中包含a react-select 字段,所以我的问题是,我有另一个字段和按钮,可以影响默认值的 react-select 组件,我试着使用setFieldValue函数,形成了 formik 但这确实改变了表格的值,但选择中的选项却没有显示出来

此处 de codeSandbox我做了一个简单的例子,我试图做什么。

有什么想法吗?

reactjs formik react-select
1个回答
1
投票

据我所知,在点击 Add option 按钮,一个新的选项应该被添加到选项列表中,并且该选项也会被标记为选中。

为此,我做了以下修改

  1. 创建的选项列表为 useState 钩子,这样我们就可以相应地改变列表
 const [options, setOptions] = useState([
    { value: "options 1", label: "option 1" },
    { value: "options 2", label: "option 2" }
  ]);

并称 setOptionshandleAddOption 功能。

 const handleAddOption = () => {
    setOptions([...options, { label: "test option", value: "test option" }]);
    return setFieldValue("name", "test option");
  };
  1. 我把 value 寓意 Select 字段,这样才能将正确的值传递给函数。namesetFieldValue 功能。
 value={defaultValue(options, values.name)} 

工作实例 https:/codesandbox.iosagitated-clark-4pjdy

© www.soinside.com 2019 - 2024. All rights reserved.