繁体   English   中英

es6在反应中使用$ {}表示多个状态

[英]es6 use ${} for multiple state in react

由于某些原因,我必须这样做

for(let i=0;i<=6;i++){
    price.push({
        min_price: `this.state.special_${i}_min`,
        max_price: `this.state.special_${i}_max`
    });
}

但这不是我所期望的,它不起作用,它变成了字符串,而不是获得我的州的价值。

您只是将字符串分配给那些属性。 尝试使用方括号。

price.push({
    min_price: this.state[`special_${i}_min`],
    max_price: this.state[`special_${i}_max`]
});

您可以在es6中这样写:

for(let i=0;i<=6;i++){
    price.push({
        min_price: this.state[`special_${i}_min`],
        max_price: this.state[`special_${i}_max`],
    });
}

对于es5:

for(let i=0;i<=6;i++){
    price.push({
        min_price: this.state["special_"+i+"_min"],
        max_price: this.state["special_"+i+"_max"],
    });
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM