我定义了两个略有不同的 Chart.js 插件,并且我有一个包含两个不同图表的页面。我想将第一个插件应用于第一个图表,将第二个插件应用于第二个图表。
根据消息来源,插件有注册和注销功能,但是您将它们注册到某个全局变量“Chart.plugins”。
我试过这样的解决方案:
Chart.plugins.register(plugin1);
window.myBar = new Chart(...);
Chart.plugins.unregister(plugin1);
Chart.plugins.register(plugin2);
window.myBar2 = new Chart(...);
Chart.plugins.unregister(plugin2);
但似乎这会在任何事情发生之前取消注册这两个插件。如果我不取消注册插件,第二个会覆盖第一个插件所做的任何事情。
此外,似乎无法将插件直接注册到特定图表,例如“windows.myBar.plugins”未定义。
有人知道是否存在不同的解决方案吗?
Edit1:我想到了一种可能的解决方法,即通过将插件的不同行为指定为各个图表的选项,然后定义一个基于图表的特定选项起作用的单个插件。但我仍然想知道是否存在将插件应用于特定图表的方法。