簡體   English   中英

從反應組件的數組類型狀態屬性中彈出的正確方法是什么?

[英]Proper way to pop from a react component's array-type state attribute?

假設我有一個反應組件,如:

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)
  });
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM