echarts点击事件修改

This commit is contained in:
13713575202 2025-04-25 16:06:37 +08:00
parent dba5cb56d3
commit 025c06f333
3 changed files with 10 additions and 20 deletions

View File

@ -69,8 +69,6 @@ export default {
setOptions(option); setOptions(option);
onMapClick(({ name, data }) => { onMapClick(({ name, data }) => {
console.info('onMapClick点击区域:', name);
console.info('onMapClick关联数据:', data);
emit('click', { name, data }); emit('click', { name, data });
}); });
startAutoPlay({ startAutoPlay({

View File

@ -33,7 +33,7 @@ export default {
emits: ['click'], emits: ['click'],
setup(props, { emit }) { setup(props, { emit }) {
const chartRef = ref(null); const chartRef = ref(null);
const { setOptions, getInstance, resize } = useEcharts(chartRef); const { setOptions, getInstance, resize, onMapClick } = useEcharts(chartRef);
const option = reactive({ const option = reactive({
series: [], series: [],
}); });
@ -59,8 +59,11 @@ export default {
option.series = props.chartData; option.series = props.chartData;
setOptions(option); setOptions(option);
resize(); resize();
getInstance()?.off('click', onClick); onMapClick(({ name, data }) => {
getInstance()?.on('click', onClick); emit('click', { name, data });
});
// getInstance()?.off('click', onClick);
// getInstance()?.on('click', onClick);
} }
function onClick(params) { function onClick(params) {

View File

@ -111,21 +111,10 @@ export const useEcharts = (elRef, theme = 'default') => {
function handleMapClick(params) { function handleMapClick(params) {
console.info('handleMapClick', params); console.info('handleMapClick', params);
// 过滤非地图区域的点击事件 console.info('seriesType', params.seriesType);
if (params.seriesType === 'map3D' || params.seriesType === 'map') { // 执行注册的回调函数
// 获取点击区域信息 if (typeof mapClickHandler === 'function') {
const mapName = params.name; mapClickHandler(params);
const regionData = params.data || {};
console.info('seriesType', params.seriesType);
// 执行注册的回调函数
if (typeof mapClickHandler === 'function') {
mapClickHandler({
name: mapName,
data: regionData,
coordinates: params.event?.event?.point,
// originalParams: params
});
}
} }
} }