fix: 修复时间刷新组件切换刷新时间只生效一个的问题,以及地址栏刷新时间与下拉列表内间隔不符时报错的问题
This commit is contained in:
@@ -67,9 +67,10 @@ export default {
|
|||||||
if (refreshTime !== null) {
|
if (refreshTime !== null) {
|
||||||
// 此处是避免下钻后浏览器返回,获取不到url的refreshTime情况
|
// 此处是避免下钻后浏览器返回,获取不到url的refreshTime情况
|
||||||
// 以及重新加载后改变时间但url回退仍保留上次数据的情况
|
// 以及重新加载后改变时间但url回退仍保留上次数据的情况
|
||||||
refreshObj = refreshArr.find(item => item.value === refreshTime)
|
refreshObj = refreshArr.find(item => item.value === refreshTime) || refreshArr[0]
|
||||||
} else if (query.refreshTime !== undefined) {
|
} else if (query.refreshTime !== undefined) {
|
||||||
refreshObj = refreshArr.find(item => item.value === Number(query.refreshTime))
|
// 若地址栏的refreshTime不是数组里的值,直接关闭刷新
|
||||||
|
refreshObj = refreshArr.find(item => item.value === Number(query.refreshTime)) || refreshArr[0]
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// 浏览器回退时,清除掉地址栏的refreshTime
|
// 浏览器回退时,清除掉地址栏的refreshTime
|
||||||
@@ -112,6 +113,8 @@ export default {
|
|||||||
this.$store.commit('setRefreshTime', val.value)
|
this.$store.commit('setRefreshTime', val.value)
|
||||||
this.$store.commit('setRefreshFlag', true)
|
this.$store.commit('setRefreshFlag', true)
|
||||||
|
|
||||||
|
// 在新的轮询开始前清除掉已经可能存在的定时器,避免新的刷新时间不生效
|
||||||
|
clearInterval(this.intervalTimer)
|
||||||
// 设置定时器
|
// 设置定时器
|
||||||
this.intervalTimer = setInterval(() => {
|
this.intervalTimer = setInterval(() => {
|
||||||
this.$emit('change')
|
this.$emit('change')
|
||||||
|
|||||||
Reference in New Issue
Block a user