Javascript Can';导入ES6模块

Javascript Can';导入ES6模块,javascript,ecmascript-6,Javascript,Ecmascript 6,我在将模块导入index.js文件时遇到问题。当我开始调试时,总是出现错误“UncaughtSyntaxError:意外标识符” My index.html文件: . . . </body> <script type="text/javascript" src="js/jquery-3.3.1.min.js"></script> <script src="js/bootstrap.min.js"></script> <sc

我在将模块导入index.js文件时遇到问题。当我开始调试时,总是出现错误“UncaughtSyntaxError:意外标识符”

My index.html文件:

.
.
.
</body>
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>    
<script src="js/bootstrap.min.js"></script>
<script type="text/javascript" src="js/defines.js"></script>
<script type="text/javascript" src="js/jgestures.js"></script>
<script type="text/javascript" src="js/mdb.js"></script>
<script type="module" src="index.js"></script>
<script type="module" src="js/global.js"></script>
</html>
my index.js文件的第一行(发生错误的位置):


有人知道我的代码有什么问题吗?

我建议首先检查浏览器支持ES6模块已经存在一段时间了,但可能是您的浏览器版本不支持此语法


然后,您需要一个像巴贝尔这样的transpiler来使用这种类型的语句。

看起来您没有正确使用ES6类。另外,请记住,并非所有浏览器都与ES6配合使用,最好使用函数或像Babel这样的transpiler

我建议您复习一下,但这里有一段代码片段,说明了您的示例在使用ES6类时需要做些什么

您的modals.js文件将变成:

class Modals{
  constructor (b) {
    this.b = b;
  }
}
export {Modals};
你的index.js:

import {Modals} from './modals.js';

let m = new Modals('something')
console.log('m', m)
你的index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script type="module" src="index.js"></script>
</body>
</html>

标题
祝你好运

import {Modals} from './modals.js';

let m = new Modals('something')
console.log('m', m)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script type="module" src="index.js"></script>
</body>
</html>