我有一个Express服务器,该服务器提供使用脚本(app.js)的html(index.html)页面。该脚本需要从另一个.js文件(TheClass.js)导入类。当前代码:
//server.js
const express = require('express');
const path = require('path')
const app = express();
app.use(express.static(__dirname));
app.get('/', (req,res)=>{
res.sendFile('index.html', __dirname);
})
app.listen(3000, ()=>{
console.log('Listening at port 3000');
})
----------------------------------------------------
//index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello</title>
<style src="style.css"></style>
</head>
<body>
<script src="./app.js"></script>
</body>
</html>
---------------------------------------------------
//app.js
import { TheClass } from './TheClass.js';
alert('Hello');
---------------------------------------------------
//TheClass.js
export class TheClass{}
使用此代码,不会运行app.js脚本。如果我删除:从'./TheClass.js'中导入{TheClass}; line,app.js脚本运行正常。我希望能够导入该类。
答案 0 :(得分:0)
您不能在网络浏览器中使用导入/导出模块。您可能会在浏览器的JavaScript控制台中看到错误。
有很多不同的软件包可以填充浏览器,以在某种程度上支持这种事情。但是我认为最好的选择是使用某种JavaScript捆绑程序将JS打包到浏览器将要使用的一个文件中。