【问题标题】:NodeJS ejs Failed to lookup view "layout" in views directoryNodeJS ejs 无法在视图目录中查找视图“布局”
【发布时间】:2020-03-03 17:53:22
【问题描述】:

我想将我的外包 .ejs 文件实现到 layouts/admin.ejs 方向。但它会抛出这个错误。我希望显示我的外包页眉、页脚和导航栏。所有这些文件都存储在 /views/partials/admin/filename.ejs

我的布局在 /views/layouts/admin.ejs

<%- head -%>


<body>
    <!-- Navigation Top -->
    <%- navigation -%>

    <!-- Page Content -->
    <div class="container-fluid main">

<%- footer -%>

    </div>

    <script src="/vendor/jquery/jquery.min.js"></script>
    <script src="/vendor/bootstrap/js/bootstrap.min.js"></script>
</body>

</html>

这是我的 app.js

const
    express = require('express'),
    path = require('path'),
    crypto = require('crypto'),
    mongoose = require('mongoose'),
    multer = require('multer'),
    GridFsStorage = require('multer-gridfs-storage'),
    Grid = require('gridfs-stream'),
    methodOverride = require('method-override'),
    bodyParser = require('body-parser');

const app = express();
const port = 3003;

// Middleware
app.use(bodyParser.json());
app.use(methodOverride('_method')); // Use query string in form

// Set view engine
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'views'));


// @route get /admin
// @desc route to admin panel
const partialRoute = '/views/partials/';
app.get('/', (req, res) => {
    res.render('layouts/admin', {
      head: res.sendFile(__dirname + partials + 'head.ejs');
      footer: res.sendFile(__dirname + partials + 'footer.ejs');
      navigation: res.sendFile(__dirname + partials + 'navigaiton.ejs');
  });



app.listen(port, () => {
    console.log(`Server running at port ${port}`);
})

我尝试更改文件夹名称和路由并删除了所有

【问题讨论】:

    标签: node.js express layout ejs


    【解决方案1】:

    hmmm...我使用 pug 而不是 ejs,但似乎目录名是错误的/未定义的? 你初始化partialRoute,而不是partials?

    也许我瞎了

    const partialRoute = '/views/partials/';
    app.get('/', (req, res) => {
        res.render('layouts/admin', {
          head: res.sendFile(__dirname + partials + 'head.ejs');
          footer: res.sendFile(__dirname + partials + 'footer.ejs');
          navigation: res.sendFile(__dirname + partials + 'navigaiton.ejs');
      });
    

    【讨论】:

      猜你喜欢
      • 2017-03-24
      • 2017-12-20
      • 2015-08-19
      • 1970-01-01
      • 1970-01-01
      • 2018-11-01
      • 2017-01-14
      • 2020-08-08
      • 2015-11-03
      相关资源
      最近更新 更多