chenken 7 سال پیش
والد
کامیت
0283dfa2ae
4فایلهای تغییر یافته به همراه26 افزوده شده و 25 حذف شده
  1. 1 1
      package.json
  2. 16 10
      src/main.js
  3. 4 12
      src/store/global.js
  4. 5 2
      src/views/index.vue

+ 1 - 1
package.json

@@ -3,7 +3,7 @@
   "version": "0.1.0",
   "private": true,
   "scripts": {
-    "serve": "vue-cli-service serve --open --port 8080",
+    "serve": "vue-cli-service serve --port 8080",
     "buildProd": "vue-cli-service build --mode production",
     "lint": "vue-cli-service lint"
   },

+ 16 - 10
src/main.js

@@ -10,11 +10,13 @@ import './assets/css/index.css'
 
 const fs = nodeRequire("fs");
 
+import global_ from './store/global'
 
 Vue.config.productionTip = false;
 Vue.use(VueResource)
 Vue.use(ElementUI)
 
+var errorNum = 0;//403次数
 Vue.http.interceptors.push(function(request,next) {
 	var user_token = localStorage.getItem("user_token");
 	if(user_token){
@@ -22,16 +24,20 @@ Vue.http.interceptors.push(function(request,next) {
 	}
 	next(function (response) {
         if (response.status == 403 && response.body && response.body.desc) {
-        	this.$alert('登录失效,请重新登录!', '提示', {
-        		showClose:false,
-                confirmButtonText:'确定',
-                callback: action => {
-                    localStorage.removeItem("rootOrgId");
-					localStorage.removeItem("userName");
-					localStorage.removeItem("user_token");
-					this.$router.push({path:'/login'});
-                }
-            })
+        	clearInterval(global_.pageTimer['uploadTimer']);//停止定时器
+        	localStorage.removeItem("rootOrgId");
+			localStorage.removeItem("userName");
+			localStorage.removeItem("user_token");
+			if(errorNum == 0){
+				errorNum++;
+	        	this.$alert('登录失效,请重新登录!', '提示', {
+	        		showClose:false,
+	                confirmButtonText:'确定',
+	                callback: action => {
+						this.$router.push({path:'/login'});
+	                }
+	            })
+        	}
         } else if (response.status != 200) {
             console.log(response);
         }

+ 4 - 12
src/store/global.js

@@ -1,12 +1,4 @@
-export const core_api = '/api/ecs_core' //基础信息API
-export const exam_work_api = '/api/ecs_exam_work' //考务信息系统API
-export const marking_api = '/api/ecs_marking' //阅卷API
-export const data_process_api = '/api/ecs_data_process' //数据中间层API
-export const oe_api = '/api/ecs_oe' //网考API
-export const question_api = '/api/ecs_ques' //题库API
-
-export const core_url = 'http://localhost:8848' //基础信息系统url
-export const exam_work_url = 'http://localhost:8858' //考务信息系统url
-export const marking_url = 'http://localhost:8888' //阅卷系统url
-export const oe_url = 'http://localhost:8878' //网考系统url
-export const question_url = 'http://localhost:8868' //题库系统url
+const pageTimer = {};//全局定时器变量
+export default {
+	pageTimer
+}

+ 5 - 2
src/views/index.vue

@@ -48,6 +48,9 @@
     const CryptoJS = require('crypto-js');
     const Base64 = require('js-base64').Base64;
     const fs = nodeRequire("fs");
+    
+    import global_ from '../store/global';
+    
 	export default {
 		data() {
 			return {
@@ -101,7 +104,7 @@
                  * 启动检查,看photoLine中是否有已完成的,如果有,从photoList中取出第一个将其替换
                  * 队列中一直保持this.concurrency个正在处理的照片
                  */
-                var uploadTime = setInterval(function(){
+                global_.pageTimer['uploadTimer'] = setInterval(function(){
 		            for (let i = 0; i < _this.photoLine.length; i++) {
 		                if (_this.photoLine[i].finished) {
 		                    if (_this.photoList.length > 0) {
@@ -113,7 +116,7 @@
 		            if (_this.photoList.length < 1) {
 		                console.log('photoList处理完毕');
 		                _this.completeShow = true;
-		                clearInterval(uploadTime);
+		                clearInterval(global_.pageTimer['uploadTimer']);
 		            }
 		        },1500);
 			},