node.js - 图像和 css 不适用于 Handlebars
问题描述
我正在研究我的投资组合并使用车把。我的根文件夹中有我的主 index.js。据我所知,它正在工作。我的主页(索引)页面在我的浏览器中本地加载,但它的 css 和图像不加载。我也有我的视图文件夹,其中我的 layout.hbs 和 index.hbs 是。然后我还有我的图像/css 文件夹,我希望我的 index.hbs 可以在其中找到我的图像/css(我在我的 index.js 中的 res.render 中作为参数传入)。但是,当我加载主页时,出现以下错误:
- “[错误] 加载资源失败:服务器响应状态为 404(未找到)(style.css,第 0 行)”
&& - “[错误] 加载资源失败:服务器响应状态为 404(未找到)(resize_profile_pic.jpg,第 0 行)”
这是我的 index.js:
// === VARIABLES === //
var express = require('express');
var app = express();
var handlebars = require("express-handlebars");
var path = require("path");
var router = express.Router(); //creates a router object, do I even need this???
//===== view ENGINE SET UP =====//
app.set('view engine', 'handlebars');
app.engine(
"hbs",
handlebars({
layoutsDir: path.join(__dirname, "views/layouts"),
partialsDir: path.join(__dirname, "views/partials"),
extname: ".hbs",
defaultLayout: "layout"
})
);
app.set("views", path.join(__dirname, "views"));
app.set("view engine", "hbs");
//NOT sure what this does??? Or if I need it???
app.use("/public", express.static(path.join(__dirname, "public")));
//saw this on a previous post but doesn't seem to work???
app.use(express.static('images'));
// Route to display static src images - also saw this on a previous post???
app.get("/static", (req, res) => {
res.render("static");
});
//===== .GET PAGES =====//
router.get('/', (req, res, next) => { //also tried app.get, do I need router???
res.render('index', {title: 'Home Page', css:['style.css']});
});
app.use('/', router);
app.listen(3000);
这是我的图像在 index.hbs 中的编码方式:
<img src="/images/resize_profile_pic.jpg" alt="">
*我还尝试了“images/resize_profile_pic.jpg”和 nada。
解决方案
推荐阅读
- javascript - 发布 500 错误:axios 在 asp.net react 应用程序中的两个非常相似但独立的函数中表现不同
- r - 如何使用来自其他列的信息创建列
- firebase - 遍历 Array Object 以显示多个图像
- python-3.x - 在 pandas 数据帧上使用 lambda、apply 和 join 函数
- python - Pickle 编码 utf-8 问题
- java - 谁可以将所有路径打印到 txt 文件中
- core-data - 如何在 SwiftUI 的 PreviewProvider 中编写示例模型对象?
- python - 从列表中随机选择时如何在字符串中使用变量?
- database - 在大型数据库中如何处理删除?
- gradle - 守护进程期间内存不足