Я пытаюсь написать простой плагин для моего проекта Vue.js (Nuxt).Я наткнулся на этот пост Добавление мутаций в Vuex store как часть Vue Plugin , но все еще не могу заставить его работать.
Вот моя структура приложения.
~ is root
~/plugins/HTTP/index.js
~/plugins/HTTP/_store/ => index.js, actions.js, getters.js, mutations.js
~/plugins/HTTP/_api/ => index.js
**Global Store**
~/store/index.js
~/store/modules/
~/store/modules/testing => index.js, actions.js, getters.js, mutations.js
в моем ~/plugins/HTTP/index.js
, у меня есть следующий код
import Vue from 'vue';
import store from '~/store';
const HTTP = {
install(vue, { store }){ // Now you plugin depend on store
if(!store){
throw new Error('Please provide vuex plugin.')
}
// register your own vuex module
store.registerModule({store})
}
}
export default HTTP;
Vue.use(HTTP)
В моем ~/store/index.js
у меня есть следующий код:
import Vuex from 'vuex'
import testingModule from './modules/testing'
const state = () => {
return new Vuex.Store({
modules:{
testing: testingModule
}
})
}
export default state
КогдаЯ пытаюсь запустить его, мне выдается следующее сообщение:
Cannot destructure property `store` of 'undefined' or 'null'.
Что я тут не так сделал?