'Vue js: module store is not defined
in my Vue js project i got the error said * ./store in ./src/main.js
and i couldn't figure out what is the problem, i use store in my app.vue and it's now working too (this.$store.dispatch("user", response.data.response);)
it says dispatch is undefined and most probably it's because of store, below is my code please take a look..
can someone please help in this?
//main.js
import Vue from 'vue';
import DashboardPlugin from './plugins/dashboard-plugin';
import App from './App.vue';
import router from './routes/router';
import VueSession from 'vue-session'
import store from './store'
export const eventBus = new Vue();
Vue.use(VueSession)
window.token=localStorage.getItem('token');
window.axios=axios
window.axios.defaults.baseURL='http://weblloapi.dev'
window.axios.defaults.params={api_token:window.token}
Vue.config.productionTip = false
Vue.use(BootstrapVueIcons)
Vue.use(BootstrapVue)
Vue.config.productionTip = false
Vue.use(DashboardPlugin);
new Vue({
el: '#app',
router,
store,
render: h => h(App)
}).$mount('#app')
//index.js
import BaseCheckbox from './Inputs/BaseCheckbox.vue';
import BaseAlert from './BaseAlert.vue';
import BaseRadio from './Inputs/BaseRadio.vue';
import BaseInput from './Inputs/BaseInput.vue';
import Badge from './Badge';
import BaseProgress from './BaseProgress.vue';
import BaseButton from './BaseButton.vue';
import BaseDropdown from './BaseDropdown.vue';
import BaseTable from './BaseTable.vue';
import Card from './Cards/Card.vue';
import StatsCard from './Cards/StatsCard.vue';
import BaseNav from './Navbar/BaseNav';
import NavbarToggleButton from './Navbar/NavbarToggleButton';
import TabPane from './Tabs/Tab.vue';
import Tabs from './Tabs/Tabs.vue';
import Collapse from './Collapse/Collapse.vue';
import CollapseItem from './Collapse/CollapseItem.vue';
import Modal from './Modal.vue';
import BaseSlider from './BaseSlider.vue';
import LoadingPanel from './LoadingPanel.vue';
import BasePagination from './BasePagination.vue';
import SidebarPlugin from './SidebarPlugin';
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
export default new Vuex.Store({
state: {
user:null
},
getters: {
user: state => {
return state.user;
}
},
mutations: {
user(state, user) {
state.user = user;
}
},
actions: {
user(context, user) {
context.commit('user', user);
}
},
})
export {
BaseCheckbox,
Badge,
BaseAlert,
BaseProgress,
BasePagination,
BaseRadio
};
thanks in advance
Solution 1:[1]
You need to create an index.js file inside a directory named store which is in the same location as your main.js
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | Jotaeme55 |