Javascript 如何正确使用静电?
这个问题与我密切相关 我正在构建一个nodeJS应用程序。您可以在下面的屏幕截图中看到文件体系结构。 当我尝试运行index.JS文件时:Javascript 如何正确使用静电?,javascript,node.js,express,Javascript,Node.js,Express,这个问题与我密切相关 我正在构建一个nodeJS应用程序。您可以在下面的屏幕截图中看到文件体系结构。 当我尝试运行index.JS文件时: const express = require('express') const server = new express() const srcDir = require('app-root-path'); const port = 3000 server.get('/', (req, res) => { res.sendFile(
const express = require('express')
const server = new express()
const srcDir = require('app-root-path');
const port = 3000
server.get('/', (req, res) => {
res.sendFile(`${srcDir}/app/views/index.html`)
})
server.listen(port, () => {
console.log(`App listening at http://localhost:${port}`)
})
问题:我得到一个空白页面,控制台说我的“应用程序”文件夹中的所有补充文件(除了HTML文件本身!)(组件(js文件)、资产(css)、e.t.c.)都无法访问:加载资源失败:服务器响应状态为404(未找到)
。我知道问题的根源可能是建立服务静态(我不理解),尽管没有它,它总是工作得很好
有人能帮忙吗?提前谢谢
附言。
控制台日志:
尝试使用 您还可以选择指定的路径预修复来显示这些文件
server.use('/static', express.static(staticDir))
您需要添加带有express.static(“目录”)
的“组件”,如下所述:
在您的情况下,将此添加到您的应用程序中
server.use(express.static(“应用程序/组件”);
例如,要访问文件FeaturePage/MainDisplay.js
,您必须在html中使用它
您必须告诉Express静态文件的根目录在哪里。通常在野外-此目录称为
public
,将包含您希望发送到浏览器的所有css、js文件。不要包含视图
或任何其他后端文件
因此,在您的情况下:创建一个名为public
的新目录,并将assets
和components
放在其中
然后在Express服务器中:
app.use(express.static(`${srcDir}/app/public`));
- 文件:
app.use(express.static(`${srcDir}/app/public`));