我在下面的方式定義一個類的內部終極版動作的創造者:我們可以在類中定義的redux Action Creators上使用bindActionCreators()嗎?
export class ActionCreator {
login() {
return { type: 'LOGIN_STATUS' };
}
fbLoginStatusOK(user) {
return { type: 'LOGIN_OK', user };
}
}
然後,反應的組分中我使用他們這樣的:
class Login extends React.Component {
login(e) {
e.preventDefault();
a = new ActionCreator(); // Simplified
dispatch(a.login());
};
render() {
return (
<div>
<h1>Login</h1>
<p>
<a href="#" onClick={this.login}>Login</a>
</p>
</div>
);
}
}
如何使用bindActionCreators上的「 ActionCreator'class or its object?
(使每一個動作創建者包裹成一個調度呼叫,這樣他們可以直接調用)
由於React是基於類的,我只是試圖在Redux部分儘可能地放置類封裝。 – Chebyr
我不會稱React爲「基於類」,而只是「模塊化」。另外,不要忘記,Redux不一定與React配合使用。在你的例子中,我看不到實際需要聲明一個類並實例化。從技術上講,它也會導致更大的代碼庫。 –
那麼我們可以去ActionCreator類中的靜態方法刪除,然後使用bindActionCreators(ActionCreator,dispatch)? – Chebyr