fix: 解决timeRange下钻后返回时间被重置的问题
This commit is contained in:
@@ -52,6 +52,9 @@ const panel = {
|
||||
npmLocationSide: 'server', // npm location的查询条件--方向
|
||||
refreshTime: null, // 自动刷新时间的秒数
|
||||
refreshFlag: true, // 关闭自动刷新标志,true为off,false即开启自动刷新
|
||||
timeRangeArray: [], // 时间范围列表:开始/结束时间
|
||||
timeRangeFlag: 60, // 时间范围标志,默认60即一小时,-1为手动选择的时间范围
|
||||
routerPath: '', // 当前路由路径
|
||||
httpCancel: null // 终止http请求
|
||||
},
|
||||
mutations: {
|
||||
@@ -148,6 +151,15 @@ const panel = {
|
||||
setRefreshFlag (state, flag) {
|
||||
state.refreshFlag = flag
|
||||
},
|
||||
setTimeRangeArray (state, array) {
|
||||
state.timeRangeArray = array
|
||||
},
|
||||
setTimeRangeFlag (state, flag) {
|
||||
state.timeRangeFlag = flag
|
||||
},
|
||||
setRouterPath (state, path) {
|
||||
state.routerPath = path
|
||||
},
|
||||
setHttpCancel (state, cancel) {
|
||||
state.httpCancel = cancel
|
||||
}
|
||||
@@ -233,6 +245,15 @@ const panel = {
|
||||
},
|
||||
getNpmThirdLevelMenuScore (state) {
|
||||
return state.npmThirdLevelMenuScore
|
||||
},
|
||||
getTimeRangeArray (state) {
|
||||
return state.timeRangeArray
|
||||
},
|
||||
getTimeRangeFlag (state) {
|
||||
return state.timeRangeFlag
|
||||
},
|
||||
getRouterPath (state) {
|
||||
return state.routerPath
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
|
||||
@@ -167,7 +167,21 @@ export default {
|
||||
|
||||
const panel = ref({})
|
||||
let panelType = 1 // 取得panel的type
|
||||
const { params, query } = useRoute()
|
||||
const { params, query, path } = useRoute()
|
||||
if (path === store.getters.getRouterPath) {
|
||||
if (query.startTime === undefined && store.getters.getTimeRangeFlag !== null) {
|
||||
// 为了避免下钻后将timeRange由范围改为为小时制
|
||||
const newUrl = urlParamsHandler(window.location.href, query, {
|
||||
startTime: store.getters.getTimeRangeArray[0],
|
||||
endTime: store.getters.getTimeRangeArray[1],
|
||||
range: store.getters.getTimeRangeFlag
|
||||
})
|
||||
overwriteUrl(newUrl)
|
||||
}
|
||||
} else {
|
||||
store.commit('setTimeRangeArray', [])
|
||||
store.commit('setTimeRangeFlag', null)
|
||||
}
|
||||
const thirdPanel = query.thirdPanel
|
||||
const fourthPanel = query.fourthPanel
|
||||
if (fourthPanel) {
|
||||
@@ -196,6 +210,7 @@ export default {
|
||||
timeFilter.value.startTime = parseInt(startTimeParam)
|
||||
timeFilter.value.endTime = parseInt(endTimeParam)
|
||||
}
|
||||
store.commit('setRouterPath', path)
|
||||
|
||||
// npm是否展示分数
|
||||
const showScorePanel = [drillDownPanelTypeMapping.npmOverviewIp, drillDownPanelTypeMapping.npmOverviewDomain, drillDownPanelTypeMapping.npmOverviewApp, drillDownPanelTypeMapping.npmOverviewCommon, drillDownPanelTypeMapping.npmThirdMenu]
|
||||
@@ -242,6 +257,9 @@ export default {
|
||||
reload (startTime, endTime, dateRangeValue) {
|
||||
this.timeFilter = { startTime: getSecond(startTime), endTime: getSecond(endTime), dateRangeValue: dateRangeValue }
|
||||
const { query } = this.$route
|
||||
this.$store.commit('setTimeRangeArray', [this.timeFilter.startTime, this.timeFilter.endTime])
|
||||
this.$store.commit('setTimeRangeFlag', dateRangeValue.value)
|
||||
|
||||
const newUrl = urlParamsHandler(window.location.href, query, {
|
||||
startTime: this.timeFilter.startTime,
|
||||
endTime: this.timeFilter.endTime,
|
||||
|
||||
Reference in New Issue
Block a user