你好,我有一些非常简单的东西:
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" href="{{adminUrl}}/assets/css/bootstrap/bootstrap-responsive.min.css">
<link rel="stylesheet" href="{{adminUrl}}/assets/css/bootstrap/bootstrap.min.css">
<script type="text/javascript" src="{{adminUrl}}/assets/js/vendors/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="{{adminUrl}}/assets/js/bootstrap/bootstrap.min.js"></script>
</head>
<body>
<div style="padding: 20px; background: #fafafa; border-bottom: solid 1px #eee">
<a href="{{adminUrl}}/users/" class="btn">users list/no paging</a>
<a href="{{adminUrl}}/create/" class="btn">create new user</a>
</div>
<h1>List data:</h1>
<ol>
{{#each data}}
<li>
<div><a href="{{adminUrl}}/details/{{id}}"><b>{{username}} - {{id}}</b></a></div>
{{email}}
<div> </div>
</li>
{{/each}}
</ol>
</body>
</html>
这是一个使用 Handlebars 的expressjs View 。 “adminUrl”位于 app.locals 中。
app.locals({
adminUrl: _config.rootUrl
});
在 {{#each 之外的 css、js 和 href 链接工作得很好,但在 {{#each... 中却不行。我该如何修复它才能工作?
最佳答案
在您的 {{#each}}
block 中尝试 {{../adminUrl}}
,因为我相信 Handlebars 会将上下文更改为 data
的当前成员,因此您需要 ..
来访问父上下文。
关于node.js - {{#each ...}} 中的 Expressjs app.locals 无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17151066/