html - 在 Node.js 中包含 CSS 和 JS 文件
问题描述
我正在学习如何使用 Node.js,但我被困住了。我无法在我的项目中加载 css 和 js 文件。我正在从 CDN 加载 Bootstrap 和 Fontawesome,它们的渲染效果很好。至于我自己的自定义 css 和 js,它们根本没有加载。
我的文件夹文件路径:
文件夹
index.html
app.js
package.json
css
main.css
文件
file.pdf
应用程序.js:
var http = require('http');
var fs = require('fs');
//creating server
http.createServer(function (req, res) {
fs.readFile('index.html', function (err, html) {
res.writeHead(200, { 'Content-Type': 'text/html' });
res.write(html);
res.end();
});
}).listen(8080);
解决方案
如果您的资产目录(css、js、字体目录)在根目录下,如下所示
然后使用此代码
在app.js中
app.use(express.static(path.join(__dirname, '/')));
并在.html文件中像这样导入 css
<link rel="stylesheet" href="css/style.css">
如果您的资产位于另一个类似的父文件夹下
public/assets/css/style.css
然后只需用/
下面的public/assets
文件夹替换
app.use(express.static(path.join(__dirname, '/public/assets')));
并且<link>
标签将保持不变
推荐阅读
- sql - 聚集索引中的最佳列顺序
- android-studio - 如何在 Android Studio 上修复应用程序模拟器
- python - 带有 GPU 的 Google Colab 上的 Cupy 内存错误 - 但只是我第二次运行代码
- java - 如何从第一次单击选择 android 中获取单选按钮的值
- javascript - vscode中的自定义智能感知自动完成:如何动态地将智能感知指向一个类或另一个?
- reactjs - React Router - 导航到相同的路由会导致重新渲染
- python - 向用户模型添加多个信号会在 forst 表中创建记录,但不会在第二个表中创建记录
- android - Flutter - 如何在按钮单击时呈现小部件?
- python - 由于最新的 numpy 和 pandas 版本,Pandas GroupBy.Agg 已停止工作
- reactjs - 使用 React.fowardRef 和 useImperativeHandle 时如何创建 ref 的 JSDoc?