joplin-notes/joplin notion extension/Web Development/nodejs/ejs.md
2026-11-04 00:33:23 +05:30

1.2 KiB

ejs

https://www.digitalocean.com/community/tutorials/how-to-use-ejs-to-template-your-node-application How To Use EJS to Template Your Node Application _ DigitalOcean.pdf

layouts use this for layouts https://www.npmjs.com/package/express-ejs-layouts

const express = require('express');
const expressLayouts = require('express-ejs-layouts');
const app = express();

// Set EJS as the view engine
app.set('view engine', 'ejs');

// Use the layouts middleware
app.use(expressLayouts);

// Optional: Define a default layout file
app.set('layout', 'layouts/layout'); 

layout at views/layouts/layout.ejs

...
<body>
    <main>
        <!-- Individual page content is injected here -->
        <%- body %> 
    </main>
</body>


view at views/index.ejs

<h1>Welcome to my Homepage!</h1>
<p>This is the main content of the home page.</p>

for custom layout

app.get('/admin', (req, res) => {
    res.render('admin-dashboard', { layout: 'layouts/admin-layout' });
});

 

when using variable which might be undefined this is safest way to do it

<% if( typeof keyword!=='undefined' && keyword ){ %>
	<br>	
<% } %>