Uncaught SyntaxError: Cannot use import statement outside a module

1,780 阅读1分钟

1、错误描述

Uncaught SyntaxError: Cannot use import statement outside a module

2、错误原因

定义了几个变量,通过export命令输出

var name = "最爱撸猫猫虫";
var age = 18;
var sex = "女";
export {name, age, sex};

想要测试一下是否成功,用import接收变量,结果报错

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      import {name, age, sex} from "./index.js"
      console.log(name)
      console.log(age)
      console.log(sex)
    </script>
  </body>
</html>

3、解决方法

script标签上添加属性type="module"就好了

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script type="module">
      import {name, age, sex} from "./index.js"
      console.log(name)
      console.log(age)
      console.log(sex)
    </script>
  </body>
</html>