| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239 |
- // 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 ElementUI from 'element-ui';
- // import 'element-ui/lib/theme-chalk/index.css';
- import App from './App'
- import router from './router'
- import axios from 'axios'
- Vue.prototype.$axios = axios //全局注册,使用方法为:this.$axios
- Vue.prototype.$EventBus = new Vue()
- import './util/http.js'
- import {
- VueJsonp
- } from 'vue-jsonp' //解决百度地图跨域
- Vue.use(VueJsonp)
- import qs from 'qs'
- Vue.prototype.qs = qs //全局注册,使用方法为:this.qs
- Vue.prototype.$EventBus = new Vue() //中央时间总线
- Vue.use(ElementUI);
- import { Message } from 'element-ui';
- //定义一个新的Message方法,多传入一个offset参数
- const $message = options => {
- return Message({
- ...options,
- offset: 160,
- type: options.type
- });
- };
- //重写一遍success的方法,将offset写入options
- ['success', 'warning', 'info', 'error'].forEach(type => {
- $message[type] = options => {
- if (typeof options === 'string') {
- options = {
- message: options,
- offset: 160
- };
- }
- options.type = type;
- return Message(options);
- };
- });
- //将$message挂载到this上
- Vue.prototype.$message = $message;
- //节流
- function throttle(){
- let prev=0
- Vue.prototype.$throttle = function(func,wait){
- let now=Date.now()
- if(now-prev>wait){
- func.apply(this)
- prev=now
- }
- }
- }
- throttle()
- import VueLazyLoad from 'vue-lazyload'
- Vue.use(VueLazyLoad, {
- preLoad: 1,
- // error: require('./assets/images/noimage.png'),
- error: require('./assets/images/newImg/noimage.png'),
- // loading: require('./assets/images/shot-1.gif'),
- loading: require('./assets/images/newImg/shot-1.gif'),
- attempt: 2,
- })
- Vue.prototype.jsonUrl = 'http://182.92.193.64'; //地图三级下钻页面使用-韩有波
- Vue.prototype.$imghost = 'http://static.yfpyx.com/projectimg' // 线上图片服务器路径常量
- Vue.prototype.$insectHost = 'https://images.weserv.nl/?url=' // 线上图片服务器路径常量
- Vue.prototype.$deriveData = 'http://114.115.147.140:8002' // 导出
- Vue.prototype.$faultvideo = 'http://192.168.1.3:8000' //售后视频地址前缀
- Vue.config.productionTip = false
- import 'babel-polyfill' //兼容IE11
- require("babel-polyfill")
- import promise from 'es6-promise'
- promise.polyfill();
- //导入全局样式
- import './assets/css/global.css'
- // 样式
- import './assets/icon/iconfont.css'
- // import './assets/css/theme/ffffff/index.css' //皮肤一
- import '../theme/index.css' //皮肤一
- import VueHighcharts from 'vue-highcharts';
- Vue.use(VueHighcharts);
- import Viewer from 'v-viewer'
- Vue.use(Viewer, {
- defaultOptions: {
- "zIndex": 9999,
- }
- })
- import 'viewerjs/dist/viewer.css'
- // 高德
- // import VueAMap from 'vue-amap';
- // Vue.use(VueAMap);
- // VueAMap.initAMapApiLoader({
- // key: '3939967b919a8003377dd113fc445a3d',
- // plugin: ['AMap.Scale', 'AMap.OverView', 'AMap.ToolBar', 'AMap.MapType','AMap.Geocoder','AMap.Geolocation','AMap.MouseTool'],
- // v: '1.4.4'
- // });
- // // 引入百度地图
- // import BaiduMap from 'vue-baidu-map'
- // import {
- // BmPolygon,
- // BmControl,
- // BmMarker
- // } from 'vue-baidu-map'
- // Vue.use(BaiduMap, BmPolygon, BmControl, BmMarker, {
- // ak: 'nroAiX0Lf6ppNEGt2dBLtDkOldGCPFwF'
- // })
- //导入全局样式
- import './assets/css/global.css'
- // 图片放大
- import preview from 'vue-photo-preview'
- import 'vue-photo-preview/dist/skin.css'
- Vue.use(preview)
- // 图片裁剪
- import VueCropper from 'vue-cropper'
- Vue.use(VueCropper)
- import animated from 'animate.css' // npm install animate.css --save-dev安装,再引入
- Vue.use(animated)
- //格式化时间戳
- import './util/formatTime'
- //设备类型
- Vue.filter('equipType', function (i) {
- switch (i) {
- case '2':
- return '杀虫灯';
- break;
- case '3':
- return '虫情测报灯';
- break;
- case '4':
- return '性诱测报';
- break;
- case '5':
- return '环境监测';
- break;
- case '6':
- return '监控';
- break;
- case '7':
- return '孢子仪';
- break;
- case '9':
- return '糖醋测报';
- break;
- case 2:
- return '杀虫灯';
- break;
- case 3:
- return '虫情测报灯';
- break;
- case 4:
- return '性诱测报';
- break;
- case 5:
- return '环境监测';
- break;
- case 6:
- return '监控';
- break;
- case 7:
- return '孢子仪';
- break;
- case 9:
- return '糖醋测报';
- break;
- }
- })
- // 弹框拖拽
- import './util/directives.js'
- // 弹框样式
- import '@/assets/css/form.css'
- router.beforeEach((to, from, next) => {
- let isLogin = JSON.parse(localStorage.getItem('isLogin'));
- if (to.path === '/login') {
- if (isLogin) {
- next('/plantGuard') //登录后默认跳转到首页
- } else {
- next()
- }
- } else if (to.name == 'PlantGuard') {
- next()
- } else {
- // let type = to.meta.login_require; //是否需要登录,为了解决扫码在手机上看
- axios({
- method: 'POST',
- url: '/api/api_gateway?method=user.login.users_check'
- }).then(res => {
- if (res.data.data == 1) { //登录状态
- // console.log('check_success');
- localStorage.setItem("isLogin", true)
- next()
- // checkLoginRequire(type, isLogin, next)
- } else { //session过期
- // console.log('check_false');
- localStorage.setItem("isLogin", false)
- next('/login');
- }
- }, err => {
- // console.log('check_error');
- localStorage.setItem("isLogin", false);
- next('/login');
- })
- }
- })
- // 引入vuex-store
- import store from './store/store';
- /* eslint-disable no-new */
- new Vue({
- el: '#app',
- router,
- store,
- components: { App },
- template: '<App/>'
- })
|