【问题标题】:render image inside ejs template in nodejs express [duplicate]在nodejs express中的ejs模板内渲染图像[重复]
【发布时间】:2012-11-20 21:58:35
【问题描述】:

我正在尝试在 ejs 模板中渲染图像。 我正在这样做:

var pic = "./public/images/"+collection_id+"/"+photo_id+".png";
var comments = "bla bla bla";
res.render('index', { title: 'Viewer' , pic: pic , comments: comments } );

在我的 .ejs 中

<img src='<%= pic %>' />

然而我发现真正的要求是

GET /collection/1/photo/public/images/1/1.png 404 1ms

/collection/1/photo/1 是我尝试路由的 URL

如何才能在模板中渲染图像?

【问题讨论】:

  • 从图片中删除第一个点:var pic = "/public/images/"+collection_id+"/"+photo_id+".png";
  • 现在我在终端中看到的GET是正确的,但我仍然无法获取图像...
  • 我认为你不需要./public

标签: node.js express ejs


【解决方案1】:

不是肯定的,但我相信 express 使用“express.static”术语来识别 HTML、图像和图标等静态内容的根源。你有没有在你的根 js 文件中设置这个术语...类似于:

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

在本例中,您的静态内容植根于公共目录,而您的图像目录位于“公共”目录中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-01
    • 2021-04-27
    • 2015-07-17
    • 2015-07-05
    • 2012-05-08
    • 2014-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多