gpt4 book ai didi

css - 如何将css链接到 Node 中的ejs模板

转载 作者:太空宇宙 更新时间:2023-11-04 00:46:23 25 4
gpt4 key购买 nike

我正在开发初学者 Node js 服务器。我能够使用 ejs 模板呈现动态 html,但我无法将 css 样式链接到它们

我已经设置了一个公共(public)目录来存储图像和外部 css 文件等 Assets 。我已经链接到静态内容来表达使用

app.use(express.static('/public', __dirname + '/public'));

我的公用文件夹中有图像(.jpg)已渲染,但公用文件夹中的 css 无法渲染。

file structure : 
node_modules
models
views
public > app.css, hero.jpg
server.js
package.json

Express 应用程序如下:server.js

const express = require('express');
const app = express();
const ejs = require('ejs');
app.use('/public', express.static(__dirname + '/public');
app.set("view engine", "ejs");
app.set('views',__dirname+'/views');
app.get('/', (req,res) =>{
res.render('home',{
title: "HomePage",
date : new Date().getFullTYear()
}
app.listen(3000);

home.ejs 文件的头部部分如下:

<head>
<meta charset = "utf-8">
<title> My Website <%= title %> </title>
<link rel="stylesheet" href="/app.css" type="text/stylesheet">
</head>

我希望 app.css 像在 home.ejs 文件中一样加载。但是它不起作用

最佳答案

查看您的代码,我猜您正在将静态文件夹设置为/public。

尝试将您的 css 链接修改为 <link rel="stylesheet" href="/public/app.css" type="text/stylesheet">

或者尝试像这样设置静态文件配置:

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

然后 <link rel="stylesheet" href="/static/app.css" type="text/stylesheet">

关于css - 如何将css链接到 Node 中的ejs模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57029465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com