Добавлено автообновление страницы приложения в браузере при обнаружении новой версии
This commit is contained in:
@@ -36,6 +36,7 @@ import wsc from './webSocketConnection';
|
|||||||
import * as utils from '../../share/utils';
|
import * as utils from '../../share/utils';
|
||||||
import * as cryptoUtils from '../../share/cryptoUtils';
|
import * as cryptoUtils from '../../share/cryptoUtils';
|
||||||
import LockQueue from '../../share/LockQueue';
|
import LockQueue from '../../share/LockQueue';
|
||||||
|
import packageJson from '../../../package.json';
|
||||||
|
|
||||||
const rotor = '|/-\\';
|
const rotor = '|/-\\';
|
||||||
const stepBound = [
|
const stepBound = [
|
||||||
@@ -92,6 +93,15 @@ class Api {
|
|||||||
try {
|
try {
|
||||||
const config = await this.getConfig();
|
const config = await this.getConfig();
|
||||||
this.commit('setConfig', config);
|
this.commit('setConfig', config);
|
||||||
|
|
||||||
|
//проверим на новую версию, обновимся при необходимости
|
||||||
|
if (this.config.version) {
|
||||||
|
if (this.config.version != packageJson.version && Date.now() - this.lastReloadTime > 15*1000) {
|
||||||
|
this.commit('setLastReloadTime', Date.now());//на всякий случай, чтобы исключить зацикливание в reload
|
||||||
|
|
||||||
|
document.location.reload();
|
||||||
|
}
|
||||||
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.$root.stdDialog.alert(e.message, 'Ошибка');
|
this.$root.stdDialog.alert(e.message, 'Ошибка');
|
||||||
}
|
}
|
||||||
@@ -101,6 +111,10 @@ class Api {
|
|||||||
return this.$store.state.config;
|
return this.$store.state.config;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
get lastReloadTime() {
|
||||||
|
return this.$store.state.lastReloadTime;
|
||||||
|
}
|
||||||
|
|
||||||
get settings() {
|
get settings() {
|
||||||
return this.$store.state.settings;
|
return this.$store.state.settings;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
// initial state
|
// initial state
|
||||||
const state = {
|
const state = {
|
||||||
config: {},
|
config: {},
|
||||||
|
lastReloadTime: 0,
|
||||||
settings: {
|
settings: {
|
||||||
accessToken: '',
|
accessToken: '',
|
||||||
limit: 20,
|
limit: 20,
|
||||||
@@ -26,6 +27,9 @@ const mutations = {
|
|||||||
setConfig(state, value) {
|
setConfig(state, value) {
|
||||||
state.config = value;
|
state.config = value;
|
||||||
},
|
},
|
||||||
|
setLastReloadTime(state, value) {
|
||||||
|
state.lastReloadTime = value;
|
||||||
|
},
|
||||||
setSettings(state, value) {
|
setSettings(state, value) {
|
||||||
state.settings = Object.assign({}, state.settings, value);
|
state.settings = Object.assign({}, state.settings, value);
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user