是否可以在组件的state
中保留哪种对象?使用Set()
会非常好,但不知道这是不是一个好主意(虽然看起来是合法的)。
var Com = new React.createClass({
getInitialState: function() {
{ set: new Set() }
},
componentDidMount: function() {
let set = this.state.set;
set.add( this.props.someAttribute );
this.setState( { set: set } );
},
...
});
这种错误的原因是:
state
和Object.freeze()
)。如果这些假设是正确的,并且知道Object.freeze()
没有冻结Set()
或Map()
,那么使用它们可能会破坏React保护其组件state
的能力
这就是为什么这个问题:这是个好主意吗?