加载JavaScript的顺序<;脚本>;文件夹

加载JavaScript的顺序<;脚本>;文件夹,javascript,dom,chart.js,Javascript,Dom,Chart.js,我正在使用Chart.js绘制一些图形,以便在浏览器中可视化。 因此,我编写了一个.js文件,我正在用html代码加载它。 我收到了一些奇怪的问题,我完全不明白 以下加载JS文件的顺序正常工作,没有任何错误: <script src="assets/js/plugins/line_chart/moment.min.js"></script> <script src="assets/js/plugins/line_chart/Chart.min.js"><

我正在使用Chart.js绘制一些图形,以便在浏览器中可视化。 因此,我编写了一个
.js
文件,我正在用html代码加载它。 我收到了一些奇怪的问题,我完全不明白

以下加载JS文件的顺序正常工作,没有任何错误:

<script src="assets/js/plugins/line_chart/moment.min.js"></script>
<script src="assets/js/plugins/line_chart/Chart.min.js"></script>
<script src="assets/js/plugins/line_chart/chartjs-plugin-zoom.js"></script>
<script src="assets/js/plugins/line_chart/hammer.min.js"></script>
问题是我使用的是Bootstrap Studio,在那里我无法更改实现顺序,因为它是自动执行的

有可能在我创建的JS文件中找到根本原因吗

我还在我的定制JS中使用了
ready
语句:

document.addEventListener("DOMContentLoaded", function(){
});

您需要在Chart.js之前包含Moment.js

js文档可以更好地突出显示这一点,但下面将对此进行解释:

独立版本包括Chart.js和颜色解析库。如果使用此版本,则需要在Chart.js之前包含矩.js,以实现时间轴的功能

如果无法更改加载顺序,则可以使用Chart.js的加载顺序(并且不要单独加载Moment.js):

捆绑版本在单个文件中包含Moment.js。如果需要时间轴并希望包含单个文件,则应使用此版本。如果您的应用程序已经包含Moment.js,则不应使用此版本。否则,Moment.js将包含两次,这将导致页面加载时间增加,并可能出现版本兼容性问题。捆绑版中的Moment.js版本是Chart.js的私有版本,因此如果您想自己使用Moment.js,最好使用Chart.js(非捆绑版)并手动导入Moment.js


我建议看一看被接受的答案。它讨论了您何时需要担心javascript文件的顺序,以及在这种情况下的选项。非常感谢您的提示!现在它工作正常了。有时,仔细阅读文档是一种优势:)
Uncaught Error: This method is not implemented: either no adapter can be found or an incomplete integration was provided.
    at nn.en (Chart.min.js:7)
    at n.update (Chart.min.js:7)
    at he (Chart.min.js:7)
    at Object.update (Chart.min.js:7)
    at Qe.updateLayout (Chart.min.js:7)
    at Qe.update (Chart.min.js:7)
    at Qe.construct (Chart.min.js:7)
    at new Qe (Chart.min.js:7)
    at window.onload (line_chart_analysis.html:182)
document.addEventListener("DOMContentLoaded", function(){
});