在node.js / express中使用EJS显示图像

时间:2013-07-19 20:42:21

标签: node.js express ejs

我只是想尝试使用node.js / express / ejs进行设置。我知道ejs不是真正的HTML,所以我很难显示一个简单的图像。有人能指出我正确的方向吗?

目录结构是:

  • 对myApp / server.js
  • 对myApp /视图/ index.ejs
  • 对myApp / logo.jpg

现在我有

// index.ejs
<img src = "../logo.jpg" />

我是以错误的方式来做这件事的吗?感谢。

3 个答案:

答案 0 :(得分:19)

Express中的静态文件必须位于static中间件中指定的目录中。这通常是./public/

例如,在您的server.js中,您可能会遇到以下情况:

app.use( express.static( "public" ) );

此文件夹中的每个文件都可以从根URL访问,因此可以使用:

<img src="logo.jpg" />

答案 1 :(得分:4)

你必须在app.js上分配app.use( express.static( "public" ) );然后不要忘记/作为root:

<img src="/images/logo.jpg" />

images文件夹应位于公共文件夹中:

- public/
  - images/
    - logo.png
- app.js

答案 2 :(得分:0)

我的 SELECT * FROM house WHERE to_char(startDate, 'YYYY/MM/DD 24hh:mm:ss')>= '2012/02/22 00:00:00' AND to_char(endDate, 'YYYY/MM/DD 24hh:mm:ss') <= '2012-02-25 00:00:00' 文件在这里js和图像文件c:/blog/index.js。并输入c:/blog/views/image.js文件此代码

js

然后在CSS中添加属性

app.use( express.static( "views" ) );