【问题标题】:Add value dynamically in object [duplicate]在对象中动态添加值[重复]
【发布时间】:2021-02-24 17:32:49
【问题描述】:

假设从下拉列表中选择:

<select onChange={newfetchVendor}>
    <option value ={'narnia}>Narnia</option>
    <option value ={'simba}>Simba</option>
</select>

在函数newfetchVenodr中:

async function newfetchVendor(e) {
    if (!!e) {
        let bestMovie = {`{e.target.value}`:'This is a good Movie'}
                         //this throws error
    }
}

如何在 bestMovie 中设置从下拉列表中选择的任何电影的键值?

【问题讨论】:

  • 您的 JSX 无效,您的字符串插值语法错误,您不必要地将事件转换为布尔值,而不仅仅是检查真实性,您为什么还要检查它?什么时候会在没有事件的情况下调用您的处理程序?为什么将没有await 的事件处理程序标记为async?这里噪音太大了……

标签: javascript node.js reactjs express react-hooks


【解决方案1】:

您需要使用[] 将值作为属性键传递:

async function newfetchVendor(e) {
    if (!!e) {
        let bestMovie = {[e.target.value]: 'This is a good Movie'}
    }
}

您的选项也缺少结尾引号。它应该是这样的:

<select onChange={newfetchVendor}>
    <option value='narnia'>Narnia</option>
    <option value='simba'>Simba</option>
</select>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-10
    • 2020-04-17
    • 1970-01-01
    • 2020-10-29
    相关资源
    最近更新 更多