在{{#each …}}中的Expressjs app.locals无法访问
你好,我有一些很简单的东西:
<!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>
这是使用车把的expressjs视图。 'adminUrl'在app.locals中。
app.locals({ adminUrl: _config.rootUrl });
在CSS中,js和一个href之外的链接{{#each可以正常工作,但是在{{#each …不。 我如何解决它的工作?
在{{#each}}
块中尝试{{../adminUrl}}
,因为我相信handlebars会将上下文更改为当前data
成员,因此您需要..
来访问父上下文。