直接贴代码:
formatter: function (params) {
var html = `<div style="text-align: left;">${params[0].axisValue}<br>`;
if (params.length > 0) {
var Xindex = params[0].dataIndex;
for (let int = 0; int < params.length; int++) {
let obj = deepClone(params[int]);
obj.marker = '';
let str = JSON.stringify(obj);
html += `<div class="specialLook tw_clr">${params[int].marker}${params[int].seriesName}: ${params[int].data} <a onclick=viewClick(${str}) type="button" class="">查看</a><br></div>`;
}
}
html += "</div>";
return html;
}
这一行是事件注册 “仔细注意viewClick”
html +=<div class="specialLook tw_clr">${params[int].marker}${params[int].seriesName}: ${params[int].data} <a onclick=viewClick(${str}) type="button" class="">查看</a><br></div>
;
js的onclick事件绑定或出发其实都绑定在了window对象里面
所以大家使用时候其实只需要在vue合适的生命周期里面添加“window.viewClick=_this.viewClick(声明的事件名);”
代码(我这里写在了created【创建的生命周期里】):
created(){
let _this=this;
window.viewClick=_this.viewClick;
},
//methods里面直接响应事件
methods:{
viewClick(item){
console.log(item)
}
}
注:代码不要完全粘贴复制,重在理解。希望对在学习路上的大家有所帮助