From 7c687e1856fef0b841606eaab646990218f66689 Mon Sep 17 00:00:00 2001 From: xiaoyanhao Date: Thu, 10 Nov 2016 11:16:55 +0800 Subject: [PATCH 1/2] enable 'state' to be a valid key in getters --- dist/vuex.js | 2 +- src/index.js | 2 +- test/unit/test.js | 14 +++++++------- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/dist/vuex.js b/dist/vuex.js index 999658503..6a3f562b0 100644 --- a/dist/vuex.js +++ b/dist/vuex.js @@ -199,7 +199,7 @@ var Store = function Store (options) { var prototypeAccessors = { state: {} }; prototypeAccessors.state.get = function () { - return this._vm.state + return this._vm.$data.state }; prototypeAccessors.state.set = function (v) { diff --git a/src/index.js b/src/index.js index 41fae2225..26149598e 100644 --- a/src/index.js +++ b/src/index.js @@ -53,7 +53,7 @@ class Store { } get state () { - return this._vm.state + return this._vm.$data.state } set state (v) { diff --git a/test/unit/test.js b/test/unit/test.js index bbdea1e1f..68de742bc 100644 --- a/test/unit/test.js +++ b/test/unit/test.js @@ -173,10 +173,10 @@ describe('Vuex', () => { it('getters', () => { const store = new Vuex.Store({ state: { - a: 1 + a: 0 }, getters: { - hasAny: state => state.a > 1 + state: state => state.a > 0 ? 'hasAny' : 'none' }, mutations: { [TEST] (state, n) { @@ -186,17 +186,17 @@ describe('Vuex', () => { actions: { check ({ getters }, value) { // check for exposing getters into actions - expect(getters.hasAny).toBe(value) + expect(getters.state).toBe(value) } } }) - expect(store.getters.hasAny).toBe(false) - store.dispatch('check', false) + expect(store.getters.state).toBe('none') + store.dispatch('check', 'none') store.commit(TEST, 1) - expect(store.getters.hasAny).toBe(true) - store.dispatch('check', true) + expect(store.getters.state).toBe('hasAny') + store.dispatch('check', 'hasAny') }) it('dynamic module registration', () => { From 397af9d68ce3d16b4b1040c1ebd11c95b2ed3d7a Mon Sep 17 00:00:00 2001 From: xiaoyanhao Date: Thu, 10 Nov 2016 13:24:23 +0800 Subject: [PATCH 2/2] do not checking `dist` --- dist/vuex.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dist/vuex.js b/dist/vuex.js index 6a3f562b0..999658503 100644 --- a/dist/vuex.js +++ b/dist/vuex.js @@ -199,7 +199,7 @@ var Store = function Store (options) { var prototypeAccessors = { state: {} }; prototypeAccessors.state.get = function () { - return this._vm.$data.state + return this._vm.state }; prototypeAccessors.state.set = function (v) {