express - res.render 传递本地参数的正确方法
问题描述
我的 navbar.ejs 中有下一个代码:
<% if (isIndex) { %>
<li class="active"><a href="/">Todos</a></li>
<% } else { %>
<li><a href="/">Todos</a></li>
<% } %>
<% if (isCreate) { %>
<li class="active"><a href="/create">Create</a></li>
<% } else { %>
<li><a href="/create">Create</a></li>
<% } %>
在我的路线文件中,我有两条路线'/'和'/create':
router.get('/', (req, res) => { res.render('index', { title: '"To do" list', isIndex: true }) })
和
router.get('/create', (req, res) => {
const options = {
title: 'create new "to do"',
isCreate: true,
}
res.render('create', options)
我有特殊的标志,具体取决于它是哪个页面(索引或创建)并使相应<li>
的活动。但是我收到“isCreate is not defined”错误,要么将其作为 obj 文字(路由'/')传递,要么将其作为 var 选项(路由'/create')传递。起作用的是这样传递:
res.render('path', { options })
在 ejs 中使用<% if (options.isIndex) { %>
and <% if (options.isCreate) { %>
. 但为什么?
解决方案
推荐阅读
- python-3.x - VScode不显示flask页面的url
- excel - VBA:使用字符串创建 PDF 文件
- html - 为什么我的 CSS 样式表没有链接到我的 HTML 文件?
- javascript - Three.js:FBX 骨骼正确旋转,而 GLTF 骨骼奇怪地旋转
- html - 将引导程序添加到站点后,列 div 消失了
- arrays - Ruby - 查找数组中下一次出现的索引
- r - 创建一个因子以将 NA 包含为一个级别
- php - 如何更改 woocommerce 订阅产品页面上的“/月”以显示订阅的长度?
- java - 从 NOT_SUPPORTED 到 REQUIRES_NEW 的 Spring 事务传播
- sql - 执行更新存储过程时的并发问题