gpt4 book ai didi

javascript - 使用 WebStorm 时不显示 .ejs 中的图像

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

我正在使用 Webstorm 创建页面,但在渲染 .ejs 时无法显示图像。这是我的代码:

测试.js

http = require('http')
express = require('express')
app = express()
app.engine('.ejs', require('ejs').__express)

var port = process.env.PORT ? process.env.PORT : 3000
http.createServer(app).listen(port, null, null, function(){
console.log('Listening to port ' + port)
})

app.get('/test', function(req, res){
res.render('test.ejs')
})

测试.ejs

注意:当我使用 Google Chrome 打开完全相同的代码时,图像呈现完美。当我尝试使用http://localhost:3000/test时我得到一个通用图像图标。

<div>
<p style="font-size: 40px; font-style: oblique;">My Page</p>
<form action="/next" method="post">
<img src="../images/test.png" >
<p>Preço: R$ 100,00</p>
<input name="next" id="next" type="submit" value="next">
</form>
</div>

这可能与权限有关吗?我已使用以下方法更改了/images 文件夹和 test.png 文件的权限:

sudo chmod 0755 /images
sudo chmod 0644 test.png

但还是没用。谢谢!

最佳答案

当使用以下项目结构时:

app.js
public
--
images
test.ejs
--
test.png

我设法使用以下代码让它工作:

http = require('http')
express = require('express')
app = express()
app.engine('.ejs', require('ejs').__express)
app.set('views', __dirname + '/public')
app.set('view engine', 'ejs')
var port = process.env.PORT ? process.env.PORT : 3000
http.createServer(app).listen(port, null, null, function(){
console.log('Listening to port ' + port)
})

app.get('/test', function(req, res){
res.render('test.ejs')
})
app.use(express.static(__dirname + '/public'))

.ejs:

<div>
<p style="font-size: 40px; font-style: oblique;">My Page</p>
<form action="/next" method="post">
<img src="images/test.png" >
<p>Pre?o: R$ 100,00</p>
<input name="next" id="next" type="submit" value="next">
</form>
</div>

关于javascript - 使用 WebStorm 时不显示 .ejs 中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30578858/

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