NgRx(或Redux)实际在哪里存储数据?

时间:2019-01-28 19:53:54

标签: redux ngrx

很明显,它位于客户端内存中,但是到底是什么使它在那里呢? LocalStorage? WebStorage?

1 个答案:

答案 0 :(得分:4)

这只是一些Javascript变量。

这是Redux商店的一个小版本:

function createStore(reducer) {
    var state;
    var listeners = []

    function getState() {
        return state
    }

    function subscribe(listener) {
        listeners.push(listener)
        return function unsubscribe() {
            var index = listeners.indexOf(listener)
            listeners.splice(index, 1)
        }
    }

    function dispatch(action) {
        state = reducer(state, action)
        listeners.forEach(listener => listener())
    }

    dispatch({})

    return { dispatch, subscribe, getState }
}

因此,state实际上只是一个变量,它指向化简函数返回的内容。