有条件地添加到JavaScript中的对象文字[关闭]

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

我想根据目标类型有条件地填充属性。

我需要在表单的事件处理程序中执行此操作(反应)。

我想要一个 if/else 语句情况,其中包含我在第 41 行和第 42 行中尝试执行的操作,但我不知道如何操作。

如何在对象文字赋值中实现 if/else 语句或 switch?

正如您从图像中看到的,我尝试过嵌套三元运算符,虽然我很高兴看到它在我的代码中没有显示任何错误,但它仍然不起作用。

我尝试使用基本的 if/else 语句,但没有成功。

javascript object conditional-statements literals
1个回答
0
投票

您实际上可以将 value 直接传递给您的handleChange 函数。看看这个例子:

const handleChange = (attribute, value) =>
  setInitialState((prev) => ({
    ...prev,
    [attribute]: value
  }));

在你的表单中像这样使用它:

return (
  <form>
    <input
      type="text"
      value={username}
      onChange={(e) => handleChange(e.target.name, e.target.value)}
    />
    <input
      type="checkbox"
      checked={accept}
      onChange={(e) => handleChange(e.target.name, e.target.checked)}
    />
  </form>
);
© www.soinside.com 2019 - 2024. All rights reserved.