假设我有一个react组件:
var MyComponent = React.createClass({
getInitialState: function() {
return {
myStack: []
};
},
...
pop: function(a) {
// any concise , elegant way to pop from array type state?
}
}
也许我可以直接写
pop: function() {
var clone = _.clone(this.state.myStack);
clone.pop();
this.setState({myStack: clone});
}
但是它看起来很丑…我知道它是有效的,但是当我写这些代码时,仅仅看着代码本身就变得很烦人。
是否有很好的方式弹出从数组类型反应组件状态?
我像
那样实现push()
push: function(a) {
this.setState({myStack: this.state.myStack.concat([a])});
}
在一行中。
我相信pop
也有一个很好的一行解决方案。
使用Array.prototype.slice
:
pop: function() {
this.setState({
myStack: this.state.myStack.slice(0, -1)
});
}