Trong ứng dụng nhanh của tôi, Tôi đã thay đổi công cụ xem thành ej.express js - ejs với mẫu bố cục
Có ai biết nếu vẫn có thể tận dụng các mẫu xem không?
Trong ứng dụng nhanh của tôi, Tôi đã thay đổi công cụ xem thành ej.express js - ejs với mẫu bố cục
Có ai biết nếu vẫn có thể tận dụng các mẫu xem không?
Express.js lá cho phép công cụ tạo mẫu nếu tôi nhớ chính xác. Vì vậy, nếu ejs không hỗ trợ bố cục thì bạn sẽ không may mắn.
Bạn có thể làm điều đó với mô-đun này ...
https://github.com/aseemk/express-blocks
layout.ejs
<html>
<body>
<% include nav %>
<h1><%= title %></h1>
<%- body %>
</body>
</html>
login.ejs
<% layout('layout') -%>
<form>...</form>
nav.ejs
<nav>
<% if (session.logged_in) { %>
<a href="/account">account</a>
<a href="/logout">logout</a>
<% } else { %>
<a href="/signup">signup</a>
<a href="/login">login</a>
<% } %>
<a href="/">home</a>
</nav>
Tôi đã sử dụng các phần thể hiện nhanh, nhưng tôi thấy các khối thể hiện tốt hơn cho các ej và thể hiện 3.x. sử dụng partials là một nỗi đau để phải vượt qua dữ liệu trong mọi lúc. Với <% include whatever %>
, dữ liệu đã có sẵn.
Trong tập tin tuyến đường của bạn, bạn có thể làm như thế này:
exports.login.get = function(req, res){
res.locals.session = req.session;
res.render('login', { title: 'Login to your account' });
};
Trên thực tế sau khi tốc 3.x là không hỗ trợ layout.ejs, nếu bạn muốn sử dụng cách bố trí, các bước sau đây cần được thực hiện bởi chính mình :
package.json
tập tin"dependencies": { "express": "3.1.0", "ejs": "*", "express-partials": "*" }
npm install
để cài đặt phiên bản mới nhất của express-partials
express-partials
trong bạn app.js
var partials = require('express-partials');
app.use(partials());
dưới app.set('view engine', 'ejs');
trong app.js
tập tinsau đó, bạn có thể thiết kế bạn layout.ejs
và thêm <%- body%>
chặn trong tệp layout.ejs
của bạn và điều đó đủ và wo rking tốt.
Người đàn ông đẹp ........ –
Nó được cho là hỗ trợ bố trí theo tài liệu của express, nhưng tôi vẫn chưa làm cho nó hoạt động chính xác. –
3.x bố cục đã xóa. Các hướng dẫn trên trang web là 2.x. – Pickels
Bạn có thể sử dụng ejs-locals để xác định bố cục. – aredridel