关于监听Echarts最多显示N个指标实现
this.chart.on(
"legendselectchanged",
this.ECThreeTrendSelectedCallback
);
ECThreeTrendSelectedCallback(param) {
let newSelected = [];
let selected = param.selected;
Object.keys(selected).forEach((key) => {
if (selected[key]) {
newSelected.push(key);
}
});
let oldSelected = this.threeTrendChartSelect;
if (newSelected.length < oldSelected.length) {
let removeIndex;
oldSelected.forEach((item, index) => {
if (newSelected.indexOf(item) === -1) {
removeIndex = index;
}
});
oldSelected.splice(removeIndex, 1);
} else {
let addItem;
newSelected.forEach((item) => {
if (oldSelected.indexOf(item) === -1) {
addItem = item;
}
});
oldSelected.push(addItem);
if (newSelected.length > 5) {
oldSelected.shift();
}
}
this.threeTrendChartCache.selectList = oldSelected;
this.threeTrendChartSelect = oldSelected;
this.setThreeTrendChart(this.threeTrendChartCache);
}