Dio*_*dre 2 handlebars.js ember.js
我正在尝试习惯Ember.js和Handlebars,但有一个问题令我感到困惑.我可能只是错过了一些东西,但已经有很长一段时间了,并且找不到任何错误.
我有简单的模板:
<header>
<h2><a href="#" class="link-box-title">{{project.pid}}-{{projectWindowTitle project}}</a></h2>
</header>
Run Code Online (Sandbox Code Playgroud)
第一个{{project.pid}}正确输出project.pid值,我想将项目对象传递给helper函数:
Handlebars.registerHelper('projectWindowTitle', function(proj) {
var info = proj.pid;
return info;
});
Run Code Online (Sandbox Code Playgroud)
我过度简化了帮助器,但结果总是一样,帮助器不会返回任何东西:
<a href="#" class="link-box-title"><script id="metamorph-9-start" type="text/x-placeholder"></script>S2S<script id="metamorph-9-end" type="text/x-placeholder"></script>-</a>
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
当在ember.js中使用把手时,助手签名与"普通"把手略有不同.主要区别在于,在调用帮助程序之前,参数未被"解析".
对于您的示例,proj是"project",因此您必须从视图中获取"project"的值:
Handlebars.registerHelper('projectWindowTitle', function(property, options) {
var project = Ember.getPath(this, property);
var info = project.get("pid");
return info;
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2538 次 |
| 最近记录: |