使用chartjs-annotation-plugin时无法从mouseenter的enter回调获取事件参数
问题原因
这是chartjs-plugin-annotation不同版本的回调参数签名不兼容导致的:
你参考的文档对应2.0及以上版本的插件,该版本的交互类回调(包括enter、leave、click等)统一使用单参数结构,事件对象挂载在回调入参的event字段下,不再使用旧版本的(ctx, e)双参数形式。如果你本地引入的是1.x系列版本的插件,参数规则和高版本文档不匹配,自然拿不到第二个参数的事件对象。
解决方案
方案1:适配当前1.x版本插件
1.x版本的回调第一个参数里已经包含事件属性,直接修改代码提取即可:enter: (ctx) => console.log(ctx.event)
方案2:升级插件到2.0及以上最新稳定版
如果要对齐最新官方用法,升级插件后按单参数结构取值即可:enter: (context) => console.log(context.event)
内容的提问来源于stack exchange,提问作者markus randa
相关产品推荐
相关产品推荐

