我對EJS有一個誤解,當我做一個帖子請求時,EJS正確地渲染了我的CSS,但是當我這樣做時:
exports.resetpassword = async (req, res) => {
const {id, token} = req.params;
const user = await LoginModel.findById(id).exec()。
const secret = process.env.TOKEN_SECRET user.password。
try {
const payload = jwt.verify(token, secret)
req.flash('emailReseter', `${user.email}`) 。
res.render("resetpassword.ejs", {messageMail: req. flash("emailReseter")})。)
} catch (錯誤) {
console.log(error.message)。
}
};
我看到的是:
我不能使用我的css檔案,我不知道問題來自哪里。
我的其他EJS檔案是一樣的,除了頭部鏈接之外,我的css檔案作業正常。
uj5u.com熱心網友回復:
到目前為止,我唯一的方法是管理它
我在我的路由中添加:const router = require("express")。 Router()。
const services = require('./service/render');
router.get("/", services.login) 。
router.get('/forgot-password', services.forgotpassword) 。
router.get('/reset-password/:id/:token', services.resetpassword) 。
router.get('/reset-password'/span>, services.resetpasswordredirect)
在我的render.js中
exports.resetpassword = async(req, res) => {
const {id, token} = req.params;
const user = await LoginModel.findById(id).exec()。
const secret = process.env.TOKEN_SECRET user.password。
try {
const payload = jwt.verify(token, secret)
req.flash('emailReseter', `${user.email}`) 。
res.redirect('/reset-password'/span>)
} catch (錯誤) {
console.log(error.message)。
}
};
exports.resetpasswordredirect = async (req,res)=>{
res.render("resetpassword.ejs", {messageMail: req. flash("emailReseter")})。)
}
uj5u.com熱心網友回復:
我之前的解決方案不是很好,因為如果我在引數里有一個ID,那么我的css就不能作業。
所以我在我的server.js中做了改變
app.use(express.static("public") )。
to:
app.use('/public'/span>, express. static("public") )。
同時也改變了我所有的ejs檔案,例如 :
<link rel="styleheet" href="css/login.css" >
變成了:
<link rel="styleheet" href="/public/css/login.css"/span>>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/331866.html
標籤:

