dygraphs 没有按预期工作,版本 1.1.0 可以使用 Waterfox 和 Safari,但不能使用版本 2.1.0

dygraphs not working as expected, version 1.1.0 does work, with Waterfox and Safari, but not version 2.1.0

相关生成的html是...

<html>
<head>
<script type="text/javascript"
    src="dygraph-combined.js"></script>
<link rel="stylesheet" src="dygraph.css" />
</head>
<body>
<div id="graphdiv" style="height: 600px; width: 1100px"></div>
<script type="text/javascript">
g = new Dygraph(document.getElementById('graphdiv'),

"Date Time,Humidity,Temperature,Dewpoint,Voltage\n" +
"2020-03-19 15:10:01,23,36.7,12.2,5.166\n"  +
"2020-03-19 15:11:01,22,36.9,11.7,5.19\n"  +
"2020-03-19 15:12:01,22,37,11.78,5.19\n"  +
"2020-03-19 15:13:01,22,37.09,11.86,5.19\n"  +
"2020-03-19 15:14:01,22,37.09,11.86,5.19\n"  +
etc.
"2020-03-22 19:16:01,41,28.7,14.16,5.166\n"  +
"2020-03-22 19:17:01,41,28.7,14.16,5.166\n"  +
"2020-03-22 19:18:02,42,28.6,14.45,5.19\n"  +
"2020-03-22 19:19:02,42,28.6,14.45,5.19\n" 

)
</script>
</body>
</html>

现在是 1.1.0 版本,不用担心,它显示了,但是新版本的一些功能显然不可用,但是,如果我尝试使用 2.1.0,浏览器会抱怨: 来自“http://raspbx.local/dygraphs-2.1.0/dygraph-combined.js”的脚本被加载,即使其 MIME 类型(“text/html”)不是有效的 JavaScript MIME 类型。 barn.html

加载源“http://raspbx.local/dygraphs-2.1.0/dygraph-combined.js”失败。

然后从 dygraph-combined.js 更改为 dygraph.js 它抱怨: 语法错误:导入声明只能出现在模块的顶层 dygraph.js:45

ReferenceError: Dygraph 未定义 barn.html:21:1

现在研究了很多但不理解它,我最终改变了一大堆东西,比如确保所有各种 .js 文件中的每个导入行都包含一个“./”作为文件名的一部分(它丢失的地方)导入以及添加“.js”后缀。在 html 文件中也发生了变化

<script type="text/javascript"

<script type="module"

所有这一切之后,我现在还剩下以下错误: ReferenceError: Dygraph 未定义 barn.html:11:1

现在,在所有导入和 "use strict" 下方的某处;还有一些"var Dygraph=",还有:

Dygraph.NAME = "Dygraph";

Dygraph.VERSION = "2.1.0";

根据我现在非常有限的知识,我认为应该将其理解为应该由 .html 文件加载的 .js 模块的定义和名称,但现在我我只剩最后 3 根头发了,再也不知道了……救命!如果你能教育我......现在,我猜我正在做一些愚蠢和愚蠢的事情,但为了我的生活,我需要有更多知识的人向我指出这一点。

有关更多详细信息,请参阅问题的评论线程,但事实证明引用的 dygraphs-2.1.0/dygraph-combined.js 文件实际上是 dygraph.js 来自 GitHub Releases page 上的一个 zip 文件 for dygraphs .

不是获取 dygraphs 的正确方法。相反,请按照 dygraphs download page 上的说明获取要分发的捆绑文件。该页面包含指向托管在 cdnjs 上并可通过 npm 下载的相同文件的链接。