Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法通过EJS导入标头_Javascript_Node.js_Express_Ejs - Fatal编程技术网

Javascript 无法通过EJS导入标头

Javascript 无法通过EJS导入标头,javascript,node.js,express,ejs,Javascript,Node.js,Express,Ejs,我实际上正在学习Node JS和Express。我正在使用上面的工具为自己制作一个小的公文包应用程序。我想让我的页眉和页脚在我的代码中可重用,在做了一些研究后,我发现EJS是最好的选择。但是我被卡住了,因为我不能得到想要的输出 我的HTML页面: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta h

我实际上正在学习Node JS和Express。我正在使用上面的工具为自己制作一个小的公文包应用程序。我想让我的页眉和页脚在我的代码中可重用,在做了一些研究后,我发现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.0">
    <title>Sambhav Dave | Portfolio</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"></script>
</head>

<body>
    <%- include('partials/header') %>
        <br><br>
        <div class="card text-center">

            <div class="card-body">
                <h5 class="card-title">Quote of the day !</h5>
                <p class="card-text">Everything in moderation, even moderation.</p>
            </div>
            <div class="card-footer text-muted">
                <i>By Mark Twain</i>
            </div>
        </div>
        <br><br>
        <hr>
        <div class="container">
            <div class="row">
                <br />
                <div class="col text-center">
                    <h2>Visitor Count</h2>
                </div>
            </div>
            <br><br>
            <div class="row text-center">
                <div class="col text-center">
                    <div class="text-center">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                            class="bi bi-people-fill" viewBox="0 0 16 16">
                            <path d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z" />
                            <path fill-rule="evenodd"
                                d="M5.216 14A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216z" />
                            <path d="M4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z" />
                        </svg>
                        <i class="bi bi-people-fill"></i>
                        <h2 class="timer count-title count-number" data-to="1700" data-speed="1500"></h2>
                        <p class="count-text ">Vistor Count comes here (put some style here)</p>
                    </div>
                </div>
            </div>
        </div>
</body>
</html>
var express = require('express')
var app = express()

const port = 8080;

// set the view engine to ejs
app.set('view engine', 'ejs');

app.get('/', (req, res) => {
    res.sendFile('index.html', { root: './src/views' })
});

app.get('/secret', (req, res) => {
    res.sendFile('admin.html', { root: './src/views' })
});

app.get('/aboutme', (req, res) => {
    res.sendFile('aboutme.html', { root: './src/views' })
});

app.listen(port, () => {
    console.log(`Example app listening on port ${port}!`)
});
<nav class="navbar navbar-expand-lg navbar-light bg-light">
    <div class="container-fluid">
        <a class="navbar-brand" href="#">Sambhav's Portfolio</a>
        <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup"
            aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
            <div class="navbar-nav">
                <a class="nav-link" href="#">About Me</a>
                <a class="nav-link" href="#">Hobby Projects</a>
                <a class="nav-link" href="#">Skills</a>
                <a class="nav-link" href="#">Blogs</a>
                <a class="nav-link" href="#">My Photography</a>
            </div>
        </div>
    </div>
</nav>
我的标题。ejs

<!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.0">
    <title>Sambhav Dave | Portfolio</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"></script>
</head>

<body>
    <%- include('partials/header') %>
        <br><br>
        <div class="card text-center">

            <div class="card-body">
                <h5 class="card-title">Quote of the day !</h5>
                <p class="card-text">Everything in moderation, even moderation.</p>
            </div>
            <div class="card-footer text-muted">
                <i>By Mark Twain</i>
            </div>
        </div>
        <br><br>
        <hr>
        <div class="container">
            <div class="row">
                <br />
                <div class="col text-center">
                    <h2>Visitor Count</h2>
                </div>
            </div>
            <br><br>
            <div class="row text-center">
                <div class="col text-center">
                    <div class="text-center">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                            class="bi bi-people-fill" viewBox="0 0 16 16">
                            <path d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z" />
                            <path fill-rule="evenodd"
                                d="M5.216 14A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216z" />
                            <path d="M4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z" />
                        </svg>
                        <i class="bi bi-people-fill"></i>
                        <h2 class="timer count-title count-number" data-to="1700" data-speed="1500"></h2>
                        <p class="count-text ">Vistor Count comes here (put some style here)</p>
                    </div>
                </div>
            </div>
        </div>
</body>
</html>
var express = require('express')
var app = express()

const port = 8080;

// set the view engine to ejs
app.set('view engine', 'ejs');

app.get('/', (req, res) => {
    res.sendFile('index.html', { root: './src/views' })
});

app.get('/secret', (req, res) => {
    res.sendFile('admin.html', { root: './src/views' })
});

app.get('/aboutme', (req, res) => {
    res.sendFile('aboutme.html', { root: './src/views' })
});

app.listen(port, () => {
    console.log(`Example app listening on port ${port}!`)
});
<nav class="navbar navbar-expand-lg navbar-light bg-light">
    <div class="container-fluid">
        <a class="navbar-brand" href="#">Sambhav's Portfolio</a>
        <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup"
            aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
            <div class="navbar-nav">
                <a class="nav-link" href="#">About Me</a>
                <a class="nav-link" href="#">Hobby Projects</a>
                <a class="nav-link" href="#">Skills</a>
                <a class="nav-link" href="#">Blogs</a>
                <a class="nav-link" href="#">My Photography</a>
            </div>
        </div>
    </div>
</nav>

我得到的输出

<!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.0">
    <title>Sambhav Dave | Portfolio</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
    <script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"></script>
</head>

<body>
    <%- include('partials/header') %>
        <br><br>
        <div class="card text-center">

            <div class="card-body">
                <h5 class="card-title">Quote of the day !</h5>
                <p class="card-text">Everything in moderation, even moderation.</p>
            </div>
            <div class="card-footer text-muted">
                <i>By Mark Twain</i>
            </div>
        </div>
        <br><br>
        <hr>
        <div class="container">
            <div class="row">
                <br />
                <div class="col text-center">
                    <h2>Visitor Count</h2>
                </div>
            </div>
            <br><br>
            <div class="row text-center">
                <div class="col text-center">
                    <div class="text-center">
                        <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor"
                            class="bi bi-people-fill" viewBox="0 0 16 16">
                            <path d="M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6z" />
                            <path fill-rule="evenodd"
                                d="M5.216 14A2.238 2.238 0 0 1 5 13c0-1.355.68-2.75 1.936-3.72A6.325 6.325 0 0 0 5 9c-4 0-5 3-5 4s1 1 1 1h4.216z" />
                            <path d="M4.5 8a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5z" />
                        </svg>
                        <i class="bi bi-people-fill"></i>
                        <h2 class="timer count-title count-number" data-to="1700" data-speed="1500"></h2>
                        <p class="count-text ">Vistor Count comes here (put some style here)</p>
                    </div>
                </div>
            </div>
        </div>
</body>
</html>
var express = require('express')
var app = express()

const port = 8080;

// set the view engine to ejs
app.set('view engine', 'ejs');

app.get('/', (req, res) => {
    res.sendFile('index.html', { root: './src/views' })
});

app.get('/secret', (req, res) => {
    res.sendFile('admin.html', { root: './src/views' })
});

app.get('/aboutme', (req, res) => {
    res.sendFile('aboutme.html', { root: './src/views' })
});

app.listen(port, () => {
    console.log(`Example app listening on port ${port}!`)
});
<nav class="navbar navbar-expand-lg navbar-light bg-light">
    <div class="container-fluid">
        <a class="navbar-brand" href="#">Sambhav's Portfolio</a>
        <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavAltMarkup"
            aria-controls="navbarNavAltMarkup" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavAltMarkup">
            <div class="navbar-nav">
                <a class="nav-link" href="#">About Me</a>
                <a class="nav-link" href="#">Hobby Projects</a>
                <a class="nav-link" href="#">Skills</a>
                <a class="nav-link" href="#">Blogs</a>
                <a class="nav-link" href="#">My Photography</a>
            </div>
        </div>
    </div>
</nav>


有人能帮忙吗?

sendFile方法只发送一个文件

如果要使用选定的视图引擎渲染视图,则需要使用
render
方法