Javascript Chart.js多重预防

Javascript Chart.js多重预防,javascript,chart.js,Javascript,Chart.js,我正在编写一些Jenkins插件,我想在大多数插件中使用Chart.js。但每个插件都负责生成页面的一小部分,这意味着我在页面中多次包含Chart.js: <script src="${rootURL}/plugin/jenkins-report-rpms/Chart.js"></script> <script src="${rootURL}/plugin/jenkins-report-jck/Chart.js"></script> <scr

我正在编写一些Jenkins插件,我想在大多数插件中使用Chart.js。但每个插件都负责生成页面的一小部分,这意味着我在页面中多次包含Chart.js:

<script src="${rootURL}/plugin/jenkins-report-rpms/Chart.js"></script>
<script src="${rootURL}/plugin/jenkins-report-jck/Chart.js"></script>
<script src="${rootURL}/plugin/jenkins-report-other/Chart.js"></script>


是否可以在某些代码中包装Chart.js以防止内容的双重初始化?可能基于已经初始化的图表变量?我不关心多个脚本的下载,但我希望避免库的双重初始化可能产生的任何副作用。

您可以包装您的Chartjs代码(即通过更改Chart.js文件)以检查全局变量Chart(
window.Chart!==未定义的
)在运行之前,请先包装代码


也就是说,您应该做的是建立一个模块化结构,每个Jenkins模块(插件)都依赖于Chart.js模块。请参阅以了解一种方法。

为什么不在head部分导入一次并删除其他引用?最后编写了一个单独的插件。希望避免这种情况,但看起来这是最可靠的方法。