2017-05-15 2 views
1

hapi.js docs erklären how to use layouts, aber wenn ich Dinge wie in den Dokumenten beschrieben einrichten, wird das Layout gerendert, ohne den Inhalt zu bringen. Der Inhalt wird korrekt wiedergegeben (ohne Layout), wenn ich die Server-Layout-Konfiguration entferne.EJS-Layout funktioniert nicht in hapi.js

Diese App verwendet vision, die eine Rolle spielen können.

Server

engines: { 
    html: require('ejs') 
}, 
relativeTo: __dirname, 
path: 'templates', 
layout: true, 
layoutPath: 'templates/layouts', 
... 

Route

handler: (request, reply) => { 
    reply.view('test') 

templates/Layouts/layout.html

<html> 
    <body> 
     {{{content}}} 
    </body> 
</html> 

templates/test.html

<h1>Test!</h1> 

Rendered Inhalt ist einfach:

{{{content}}} 

Wie kann ich den Inhalt innerhalb des Layouts zu machen?

Antwort

1

Sie müssen die EJS-Syntax anstelle der Lenksäulensyntax verwenden.

/layouts/layout.html

<%- content %> 
Verwandte Themen