fix: antv散点图跳转无效

This commit is contained in:
ulleo 2023-11-23 16:48:04 +08:00
parent 50edc9ca9d
commit f485899163
3 changed files with 27 additions and 1 deletions

View File

@ -1067,7 +1067,15 @@ export default {
jumpClick(param) { jumpClick(param) {
let dimension, jumpInfo, sourceInfo let dimension, jumpInfo, sourceInfo
// name namedimension // name namedimension
if (param.name) { if (param.scatterSpecial) {
param.scatterSpecialData.dimensionList.forEach(dimensionItem => {
if (param.scatterSpecialData.field === dimensionItem.value) {
dimension = dimensionItem
sourceInfo = param.viewId + '#' + dimension.id
jumpInfo = this.nowPanelJumpInfo[sourceInfo]
}
})
} else if (param.name) {
param.dimensionList.forEach(dimensionItem => { param.dimensionList.forEach(dimensionItem => {
if (dimensionItem.id === param.name || dimensionItem.value === param.name) { if (dimensionItem.id === param.name || dimensionItem.value === param.name) {
dimension = dimensionItem dimension = dimensionItem
@ -1091,6 +1099,7 @@ export default {
} }
} }
} }
if (jumpInfo) { if (jumpInfo) {
param.sourcePanelId = this.panelInfo.id param.sourcePanelId = this.panelInfo.id
param.sourceViewId = param.viewId param.sourceViewId = param.viewId

View File

@ -410,6 +410,17 @@ export default {
group: this.pointParam.data.group group: this.pointParam.data.group
} }
if (this.chart.type === 'scatter' && this.chart.render === 'antv') {
const xAxis = JSON.parse(this.chart.xaxis)
if (xAxis && xAxis[0] && xAxis[0].groupType === 'q') {
linkageParam.scatterSpecial = true
linkageParam.scatterSpecialData = this.pointParam.data
jumpParam.scatterSpecial = true
jumpParam.scatterSpecialData = this.pointParam.data
}
}
switch (trackAction) { switch (trackAction) {
case 'drill': case 'drill':
this.$emit('onChartClick', this.pointParam) this.$emit('onChartClick', this.pointParam)

View File

@ -522,6 +522,12 @@ export default {
checkJumpStr = checkAllAxisStr checkJumpStr = checkAllAxisStr
} else if (chartDetails.type === 'table-info') { } else if (chartDetails.type === 'table-info') {
checkJumpStr = chartDetails.xaxis + chartDetails.drillFields checkJumpStr = chartDetails.xaxis + chartDetails.drillFields
} else if (chartDetails.render === 'antv' && chartDetails.type === 'scatter') {
checkJumpStr = checkAllAxisStr
const xAxis = JSON.parse(chartDetails.xaxis)
if (xAxis && xAxis[0] && xAxis[0].groupType === 'q') {
checkJumpStr = checkJumpStr + chartDetails.extStack
}
} else { } else {
checkJumpStr = checkAllAxisStr checkJumpStr = checkAllAxisStr
} }