25

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

目录结构为:

  • myApp/server.js
  • myApp/views/index.ejs
  • 我的应用程序/logo.jpg

现在我有

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

我会以错误的方式解决这个问题吗?谢谢。

4

3 回答 3

42

Express 中的静态文件必须放在static中间件中指定的目录中。这是常见的./public/

例如,在你的server.js你可能有这样的东西:

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

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

<img src="logo.jpg" />
于 2013-07-19T20:47:14.287 回答
13

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

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

图片文件夹应该在公共文件夹中:

- public/
  - images/
    - logo.png
- app.js
于 2018-03-15T11:33:08.950 回答
0

我的js文件在这里c:/blog/index.js和图像文件c:/blog/views/image.js。并输入js文件此代码

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

然后在 CSS 添加属性

body {
background-image: url("./image.jpg"); }

于 2020-01-25T18:25:19.743 回答