如何在快递js中包含静态文件

我正在使用快速js框架与节点js和我的server.js文件中,我已经使用

app.use('/api',router); 

在我的ejs文件中,当我使用脚本标记

 <script src = main.js> 

我得到一个错误“无法得到http:// localhost:3000 / api / main.js ”我怎么能包括这些文件在ejs

请帮忙!!!

你可以使用express.static中间件

 app.use('/public', express.static('directory/containing/your/files')); 

express.static的参数是包含所有您希望使其成为静态文件的目录的path(您提供的path可以相对于启动节点进程的目录或绝对path),目录应该在您的文件系统中可用。
那么你可以要求你的资源,如: <img src='/public/imagesA.jpg'>
“/ public”装载path是可选的,但build议使用

您可以通过Express – express.static('folder/with/resources')包含的中间件来提供静态文件。 您可以使用app.use将其添加到中间件链中。

假设您想通过公共URL /static来提供位于本地文件夹/dist中的静态文件。

 import express from 'express'; const app = express(); app.use('static', express.static('dist')); 

在这里阅读更多关于它。

在app.js中,您必须添加静态文件夹目录访问权限

 app.use(express.static(path.join(__dirname, 'public'))); 

在公共文件夹中添加文件夹文件

 --public ----javascript ----css ----img 

在javascript里面添加你的main.js

并在ejs添加

 <script src = "javascript/main.js"></script>