react/no-set-state 風格
此規則的作用
禁止在 React 元件中使用 this.setState
。
為什麼這是不好的?
當使用將應用程式狀態與 UI 元件分離的架構(例如 Flux)時,可能需要禁止使用本機元件狀態。此規則在唯讀應用程式(不使用表單)中特別有用,因為在這種情況下,本機元件狀態應很少是必要的。
範例
jsx
var Hello = createReactClass({
getInitialState: function () {
return {
name: this.props.name,
};
},
handleClick: function () {
this.setState({
name: this.props.name.toUpperCase(),
});
},
render: function () {
return <div onClick={this.handleClick.bind(this)}>Hello {this.state.name}</div>;
},
});