2

Reflux のストアをリセットする方法です。

Jasmine で各テストを実行する前に、Reflux のストアをリセットしたいと考えています。

4

2 に答える 2

1

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()私がこれを行うのは、誰もあなたの店の状態を外部からいじることができず、店だけが状態を変更できるという利点があるためですが、もちろんこれは単なるマイナーです実装の詳細と、すべてを自由にストア自体の一部にすることができます。

于 2015-08-14T19:35:25.920 に答える