2016-10-04 77 views

回答

1

因爲x++表達式首先返回的x然後它增加它

雖然++x首先增加它,然後返回該增加值;

可以使用前增量這樣

addCount() { 
    this.setState({count:++this.state.count}) 
} 

參考。 MDN postfix/prefix increment operator ++

+0

請注意,我在回答「我很奇怪爲什麼」在你的問題中。否則,'this.setState({count:this.state.count + 1})'更具慣用性。 – bakkal

+0

啊有道理! TQ –

0

當你'A = B ++「,則第一b的值分配給一個,則遞增灣它被稱爲後增量。 在你的例子中它是一樣的:'count'將等於'this.state.count'(所以這個值將是相同的),然後你增加'this.state.count',但它會被'當setState完成時,因爲您改變了狀態,因此計數。 setState在這裏設置你的變量,不要在這個方法中改變它。

你的第一個命題是做你想要的方式。

希望這會有所幫助!