123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- // The Vue build version to load with the `import` command
- // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
- import Vue from 'vue'
- import App from './App'
- import router from './router'
- import store from './store'
- import axios from 'axios'
- let moment = require('moment-timezone')
- require('moment/locale/cs')
- import ElementUI from 'element-ui';
- // import 'swiper/css/swiper.css';
- import 'element-ui/lib/theme-chalk/index.css';
- import toView from '../src/assets/js/routerView';
- import less from 'less'
- import commonArray from '../src/assets/js/common'
- import BabelPolyfill from "babel-polyfill"
- import 'vue-video-player/src/custom-theme.css'
- import 'video.js/dist/video-js.css'
- Vue.use(BabelPolyfill)
- Vue.use(less)
- Vue.use(commonArray)
- Vue.prototype.$http = axios
- axios.defaults.baseURL = 'http://localhost:7011'
- Vue.use(toView);
- import Print from 'vue-print-nb'
- // import Print from '../src/utils/print';
- Vue.use(Print);
- import VueVideoPlayer from 'vue-video-player';
- Vue.use(VueVideoPlayer)
- import pdf from 'vue-pdf'
- Vue.use(pdf)
- import SlideVerify from 'vue-monoplasty-slide-verify';
- Vue.use(SlideVerify);
- axios.defaults.baseURL = 'http://localhost:8080/api/uc/'
- import Share from 'vue-social-share'
- import Cookies from 'js-cookie'
- Vue.prototype.$Cookies = Cookies
- Vue.prototype.$moment = moment()
- import 'vue-social-share/dist/client.css';
- import '../node_modules/social-share.js/dist/js/social-share.min.js'
- Vue.use(Share)
- import VueBus from "./api/vue-bus";
- Vue.use(VueBus);
- import echarts from 'echarts';
- Vue.prototype.$echarts = echarts;
- import '../node_modules/echarts/map/js/world.js'
- // import Print from 'vue-print-nb'
- // Vue.use(Print);
- // 全局组件
- Vue.use(ElementUI, {
- i18n: (key, value) => i18n.t(key, value)
- });
- // 用户信息方法
- import "@/utils/common.js"
- import VueI18n from 'vue-i18n'
- import "@/assets/css/index.css"
- Vue.use(VueI18n)
- import $ from 'jquery'
- window.$ = $
- window.jQuery = $
- import VueDND from 'awe-dnd'
- Vue.use(VueDND)
- import Vuex from 'vuex'
- Vue.use(Vuex)
- import scroll from 'vue-seamless-scroll'
- Vue.use(scroll)
- import '@/assets/css/main.css'
- //处理pdf-wzw
- import htmlToPdf from '@/utils/htmlToPdf'
- Vue.use(htmlToPdf)
- //截取地址栏数据
- import {UrlSearch} from "./assets/js/Fun"
- let Request = new UrlSearch();
- Vue.prototype.$Request=Request;
- //汉字转拼音
- import py from 'vue-py'
- Vue.use(py)
- Vue.filter('datefmt', function (input, fmtstring) {
- return moment.unix(input).format(fmtstring)
- })
- let langdefaultLanguage = navigator.language || navigator.userLanguage;//常规浏览器语言和IE浏览器
- langdefaultLanguage = langdefaultLanguage.substr(0, 2);//截取lang前2位字符
- if (langdefaultLanguage !== 'zh') {
- langdefaultLanguage = 'en';
- }
- import enLocale from 'element-ui/lib/locale/lang/en'
- import zhLocale from 'element-ui/lib/locale/lang/zh-CN'
- import { enCommon } from '@/assets/languages/en.js'
- import { zhCommon } from '@/assets/languages/zh.js'
- const i18n = new VueI18n({
- locale: langdefaultLanguage, // 定义默认语言为英文
- messages: {
- 'en': {
- common: enCommon,
- ...enLocale
- },
- 'zh': {
- common: zhCommon,
- ...zhLocale
- },
- }
- });
- router.beforeEach((to, from, next) => {
- window.scrollTo(0, 0);
- if (to.matched.some(res => res.meta.requireAuth)) {// 判断是否需要登录权限
- let token = Vue.prototype.$Cookies.get('token');
- if (token) {// 判断是否登录
- next()
- } else {// 没登录则跳转到登录界面
- next({
- path: '/login',
- })
- }
- } else {
- next()
- }
- });
- let vueThis = new Vue({
- el: '#app',
- router,
- store,//使用store
- i18n,
- components: { App },
- template: '<App/>'
- })
- export default vueThis
|