【发布时间】:2017-10-13 07:20:01
【问题描述】:
我正在构建具有如下结构的反应种子项目:
project
│ package.json
│ webpack.config.js
│ .babelrc
│
└───bin
│ app.bundle.js
│
└───node_modules
|
└───public
│ index.html
└───src
app.jsx
要启动项目,我有设置命令 npm run dev 运行:
webpack -d --watch && ./node_modules/.bin/http-server -a localhost -p 8000 -c-1
它在 localhost:8000 上启动服务器,并且 webpack 正在监视更改。
http-server 在我的 index.html 所在的 ./public 文件夹中有一个入口点。
这似乎是一种运行服务器的安全方式,因为它只能访问公用文件夹,但是当我尝试包含已编译的 app.bundle.js 文件时遇到了问题。
./public/index.html
<html>
<head>
<meta charset="utf-8">
<title>Seed project</title>
</head>
<body>
<div id="app" />
<script src="../bin/app.bundle.js" type="text/javascript"></script>
</body>
</html>
当我运行服务器时,我收到 app.bundle.js 文件未找到的错误,因为服务器看不到公共文件夹入口点上方的任何内容。
将 index.html 移动到根文件夹不是一个好习惯,因为这样就可以访问所有其他文件,这是不安全的。
这个问题应该如何解决?
提前致谢。
PS。 Webpack 从 src 文件夹编译文件并在 ./bin 文件夹中创建单个文件。
【问题讨论】:
-
绑定应该放在 ./public 文件夹中。您不是在制作桌面应用程序,因此请放弃 ./bin 文件夹。
标签: javascript node.js webpack