渲染ejs文件时样式表和图像无法反映

时间:2018-10-02 20:21:53

标签: html node.js express directory ejs

我正在一个网站上工作,并且在渲染ejs文件(index.ejs)时,仅显示html部分,同时不显示样式表,字体和图像。

链接样式表的代码为:

 <!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>PUBG Tournaments by Regal Gaming</title>
    <!-- load stylesheets -->
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:100,300,400">
    <!-- Google web font "Open Sans" -->
    <link rel="stylesheet" href="font-awesome-4.5.0/css/font-awesome.min.css">
    <!-- Font Awesome -->
    <link rel="stylesheet" href="css/bootstrap.min.css">
    <!-- Bootstrap style -->
    <link rel="stylesheet" href="css/magnific-popup.css">
    <!-- Magnific pop up style -->
    <link rel="stylesheet" href="css/templatemo-style.css">

我正在使用模板,并且我保持目录的结构相同。 也就是说,css,js,img和fonts文件夹与index.ejs文件位于同一目录。

1 个答案:

答案 0 :(得分:0)

我想出了答案。

要将静态文件呈现到ejs模板中,要求文件位于公共目录中。
将此添加到服务器文件:

app.use('/static', express.static(path.join(__dirname, 'public')))