状态更改后选择输入标签消失

时间:2021-03-16 09:53:03

标签: javascript reactjs react-redux react-hooks

我有多个选择的选项下拉列表在标签中选择上面的值渲染。单击标签时,您可以将新文本值附加到初始值。这是一个膳食计划应用程序,因此您选择了一种食物并添加了一份份量以便更好地理解。问题是最后一项的渲染标签总是消失。 state 中的值正在正确更新,它只是最后一个标签。

const renderLabel = (label, i) => ({
    content: result.monday.breakfast.fruits[i],
    onClick: () => {
      const servingSize = prompt(label.key = ' serving size:');
      if (servingSize !== null) {
        const newArr = update(result,
          {monday: {breakfast: {fruits: {$apply: (arr) => {
            arr[i] = arr[i] + ' ' + servingSize;
            return arr;
          }}}}}  
        );
        if (newArr) {
          setResult(newArr);
        };
      };
    }
  });

我正在为组件使用“semantic-ui-react”库,并使用“immutability-helper”来更新我的嵌套对象。我知道这与不更新 renderLabel 道具对象在组件中接收的内容键有关。这是我的第一个真正的 React 项目,我不确定这样做的最佳方法是什么。感谢任何有关我应该如何设置的帮助或线索,谢谢!顺便说一句:标签道具接受选项对象,例如:{key: 'apple', text: 'apple', value: 'apple'}

0 个答案:

没有答案