import Vue from 'vue'; import App from './App.vue'; import router from './router'; import store from './store'; import ElementUI from 'element-ui'; import VueI18n from 'vue-i18n'; import '@/plugins/axios'; import '@/plugins/check-res'; import '@/plugins/meta'; import '@/plugins/filters'; import '@/plugins/loading'; import '@/plugins/var'; import '@/plugins/methods'; import '@/plugins/setting'; import { messages } from './components/common/i18n'; import 'element-ui/lib/theme-chalk/index.css'; // 默认主题 // import './assets/css/theme-green/index.css'; // 浅绿色主题 import './assets/css/icon.css'; import './components/common/directives'; import 'babel-polyfill'; Vue.config.productionTip = false; Vue.use(VueI18n); Vue.use(ElementUI, { size: 'small', }); const i18n = new VueI18n({ locale: 'zh', messages, }); //使用钩子函数对路由进行权限跳转 router.beforeEach((to, from, next) => { document.title = `${to.meta.title} `; const user = localStorage.getItem('user'); if (!user && to.path !== '/login') { next('/login'); } else { store.commit('setUser', JSON.parse(user), { root: true }); next(); } }); new Vue({ router, store, i18n, render: h => h(App), }).$mount('#app');