在nodejs express中的ejs模板内渲染图像

时间:2012-11-20 21:58:36

标签: node.js express ejs

我正在尝试在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是我尝试路由的网址

如何在模板中渲染图像?

1 个答案:

答案 0 :(得分:0)

不是正面的,但我相信快递使用&#34; express.static&#34;术语,用于标识HTML,图像和图标等静态内容的根源。您是否在根js文件中设置了这个术语......如:

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

在此示例中,您的静态内容植根于公共目录,而您的图像目录位于公共&#39;。