我正在具体学习JavaScript模块,并且想测试我所学到的关于模块的所有内容,但是当我连接文件并运行它时会抛出错误,我不明白为什么。
这是错误:
这是HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Modules</title>
</head>
<body>
<script type="module" src="script.js"></script>
</body>
</html>
第一个JS文件:
export const module = {
one: "one",
second: "second",
third: "third"
};
第二个JS文件:
import {module} from "./modules.js";
console.log(module);
请说出问题所在,我该怎么办?
答案 0 :(得分:1)
很明显在控制台中显示错误消息。
您应该运行网络服务器(例如nginx),并根据定义为使用HTTP请求运行服务器的服务器将文件放置到正确的文件夹中。
EX:运行一个简单的node.js服务器
package.json
{
"name": "example",
"version": "1.0.0",
"dependencies": {
"express": "^4.17.1"
},
"scripts": {
"start": "node server.js"
},
}
server.js
const express = require('express');
const app = express();
app.get("/", (req, res) => {
res.sendfile(__dirname + '/index.html', err => {
if (err) res.send(404);
});
});
app.get(/(.*)\.(js)/i, (req, res) => { // it also can add other filenames extension
res.sendfile(__dirname + "/" + req.params[0] + "." + req.params[1], err => {
if (err) res.send(404);
});
});
app.listen(3000, () => { // port can be modified
console.log('Listening on port 3000!');
});
将所有文件和以上文件放在同一文件夹中。
运行 npm start 或 node server.js 以启动服务器。