При импорте D3 в модуль JavaScript через тег скрипта я получаю ошибку Uncaught TypeError: Cannot read property 'd3' of undefined
.
Прочитав, что все основные браузеры теперь поддерживают модули JavaScript, я пытаюсь импортировать мой код D3 через тег <script type="module" src="network.js"></script>
, как описано здесь:
https://developers.google.com/web/fundamentals/primers/modules
Однако, когда я импортирую D3, я получаю сообщение об ошибке:
d3.js:5 Uncaught TypeError: Cannot read property 'd3' of undefined
at d3.js:5
at d3.js:6
Если у меня есть файл index.html
:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<script type="module" src="network.js"></script>
</body>
</html>
С D3 v5.7.0 в том же каталоге и network.js
просто содержит:
import * as d3 from "./d3.js";
или просто
import "./d3.js";
получена вышеуказанная ошибка.
Я бы ожидал того же поведения, что и в CommonJS или AMD:
https://github.com/d3/d3-interpolate/issues/45#issuecomment-329590699