66581


Javascriptのモジュールをimportしようとすると、以下のエラーが発生しました。

[code]

    SyntaxError: import declarations may only appear at top level of a module
    
[/code]

test.js ( moduleファイル ↓)

[code]

    function crazyman() {
          alert("You idiot!");
    }
    export crazyman();
    
[/code]

crazy.js (importしたファイル↓)

[code]

    import {crazyman} from "test.js";
    crazyman();
    
[/code]

easy_sample.html (HTMLファイル↓)

[code]

      <!DOCTYPE html>
      <html lang="ja" dir="ltr">
       <head>
        <meta charset="utf-8">
        <title>javascript sample</title>
       </head>
       <body >
        <script src="crazy.js"></script>
       </body>
      </html>
    
[/code]

三つのファイルはすべて同じディレクトリに存在しています。ブラウザはfirefoxです。


CC BY-SA 4.0
2020-05-13T17:49:35.227
66579
2020-05-13T23:47:10.517
40131
question
javascript
JavaScriptのModuleのimportでエラー


モジュールではないJavaScriptコードでは`import`が使えません。

HTMLでJavaScriptコードをモジュールとして扱うには、`script` 要素に `type="module"` を指定します。

[code]

    <script src="crazy.js" type="module"></script>
    
[/code]


CC BY-SA 4.0
2020-05-13T23:47:10.517
66581
2020-05-13T23:47:10.517
3475
66579
answer