Reflux のストアをリセットする方法です。
Jasmine で各テストを実行する前に、Reflux のストアをリセットしたいと考えています。
Reflux はストアにデータを保存する方法を指示しないため、自分で行う必要があります。したがって、ストア データへの公式のインターフェイスはありません。
たとえば、私は次のようにします:
function defaultState() {
return {
userId: -1,
displayName: null,
loggedIn: false
};
}
var state = defaultState();
var userStore = Reflux.createStore({
// all your store methods
reset: function () {
state = defaultState();
// do other cleanup, or trigger a change event
}
});
したがって、ジャスミンのテストでは、次のように呼び出す必要があります。myStore.reset()
なぜ私が店の外に置くのか疑問に思っている場合state
:defaultState()
私がこれを行うのは、誰もあなたの店の状態を外部からいじることができず、店だけが状態を変更できるという利点があるためですが、もちろんこれは単なるマイナーです実装の詳細と、すべてを自由にストア自体の一部にすることができます。