鍍金池/ 問答/網(wǎng)絡安全  HTML/ javascript import 報錯

javascript import 報錯

初學者, 想知道錯誤出在哪里,找到的資料都介紹的
以下是我精簡后的代碼內容,錯誤提示在 main.js import那一行
錯誤提示為:
SyntaxError: Unexpected token '{'. import call expects exactly one argument

index.html

<!DOCTYPE html>
<html>

<head>
    <title>LearnJavscript</title>
    <meta charset="utf-8">
    <style type = "text/css">
        body{
            background: #FFFFFF;
            padding: 0px;
            margin: 0px;
            display: flex;
            /* flex-direction: column-reverse; */
            justify-content: center;
        }
 
    </style>
</head>

<body>
    <script src="main.js"></script>
</body>

</html>

main.js

import {hello} from './lib.js';

hello();

lib.js

export function hello() {
    console.log('hello');
}
回答
編輯回答
乖乖噠

不支持import語法,可以使用babel轉成es5

2018年2月19日 08:28
編輯回答
陌南塵

瀏覽器啥時候可以直接用 import了?
瀏覽器JS不支持模塊系統(tǒng),如果需要,需要用requirejs或者seajs或者webpack處理

2018年6月17日 01:20
編輯回答
情皺

目前支持 ES6 Module 的瀏覽器:

  • Safari 10.1
  • Chrome 61
  • Firefox 54 需要設置 dom.moduleScripts.enabled
  • Edge 16

在瀏覽器里使用 Module 的方法:

<script type="module" src="./main.js"></script>
// 或
<script type="module">
  import './main.js';
</script>

需要注意的規(guī)范:

  1. 注意引用的路徑,不支持 main.js,支持 /main.js、./main.js、../main.js、**/main.js
  2. 使用 nomodule 屬性向后兼容
  3. Modules 默認使用 Defer,即慢于同步的請求,但先于顯式 Defer 的請求
  4. 引用或內聯(lián)的 Modules 都支持 Async
  5. 多次引用同一個Modules,只執(zhí)行一次
  6. 通常需要 CORS,即需要 Access-Control-Allow-Origin: *
  7. 發(fā)送請求默認不包括證書
  8. Modules 需要設置可用的 MIME 類型,否則不會執(zhí)行

參考:
https://jakearchibald.com/201...

2017年6月10日 11:42
編輯回答
愛礙唉
<script src="main.js"></script>

=>

<script type="module" src="main.js"></script>
2017年8月3日 19:31