【发布时间】:2019-08-01 03:28:19
【问题描述】:
我有一个使用 webpack 构建的小型 react 应用程序,它编译为 /dist/bundle.js。然后我有一个快速服务器来提供引用我的 bundle.js 的 HTML 文件。这样,当我连接到我的 express 服务器时,它将包含我的 React 应用程序。 express 提供的 HTML 文件如下:
<!DOCTYPE html>
<html>
<head>
<title>The Minimal React Webpack Babel Setup</title>
</head>
<body>
<div id="app"></div>
<script src="./dist/bundle.js"></script>
</body>
</html>
但是当在本地运行并在浏览器中打开它时,什么都没有显示。检查源代码时,我可以看到 HTML 文件在那里,但页面上没有显示任何内容。
我的 server.js 如下:
var express = require('express');
var app = express();
var path = require('path');
app.get('/', function(req, res) {
res.sendFile(path.join(__dirname + '/index.html'));
});
app.listen(8080);
为什么我看不到我的 React 应用程序?感谢您的帮助!
检查页面时,我看到以下内容(无法真正复制和粘贴,因此添加了屏幕截图):
【问题讨论】:
-
只需运行控制台并检查您的包是否已加载。
-
@emix 我添加了我在控制台中看到的内容。它只是 HTML,它引用了包但似乎没有加载它?
-
实际上等等,在控制台中我看到了
GET http://localhost:8080/dist/bundle.js net::ERR_ABORTED 404 (Not Found),所以也许我必须将包托管在一个快速端点上并以这种方式从 html 中引用它? -
这是你的答案,没有捆绑包。
标签: javascript node.js reactjs express webpack