ReactJs如何删除一个状态项
Posted
技术标签:
【中文标题】ReactJs如何删除一个状态项【英文标题】:ReactJs How to Delete state item by one 【发布时间】:2018-06-29 12:59:12 【问题描述】:例如,如果我将 10 个相同的商品添加到一个购物车中,我如何将其减少到 9 个。
this.state =
cart =
this.props.cart[key]
//tshirt: 10
谢谢。
【问题讨论】:
您需要提供更多详细信息。 【参考方案1】:解决了。对不起,如果这看起来太菜鸟问题。答案是,一如既往的愚蠢,一直在我的眼皮底下。感谢您的回答,您的回答很有帮助。
cart[key] = cart[key] - 1;
if (cart[key] < 0)
cart[key] === 0;
else
this.setState(cart)
【讨论】:
【参考方案2】:首先this.state
和this.props
不同,因此请查看您的代码this.props.cart === undefined
。除非您的代码的某些部分没有看到。
这就是说this.state.cart
就像任何其他 js 对象一样,因此假设“键”是属性名称,即使用键的this.state.cart['shirt-10'] = ...propsOfShirt10 you can just use
delete`。
delete this.state.cart['shirt10']
【讨论】:
只是一个方面,老实说不关我的事,如果你是 js 新手,请不要从 react 开始。学习基础知识。有了新功能,你可以在 js 上走得很远。【参考方案3】:我假设你想递减,所以你可以做这样的事情
this.setState(tshirt: this.state.tshirt - 1)
【讨论】:
以上是关于ReactJs如何删除一个状态项的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ReactJs Redux 中删除/设置状态数组的“null”嵌套属性?