gpt4 book ai didi

ember.js - 绑定(bind)助手将参数作为字符串而不是属性值

转载 作者:行者123 更新时间:2023-12-02 05:58:03 25 4
gpt4 key购买 nike

我是 Handlebars(和 Ember)的新手,所以这可能是我犯了一个可悲的简单错误,但我感到很困惑,希望其他人可以看看这个。

我有一个简单的 Handlebars 绑定(bind)助手(注意:我正在使用 moment.js 并加载了适当的 JS):

Handlebars.registerHelper('time', function(context) {
console.log("time: " + context);
var aMomentInTime = new moment(context,["YYYY-MM-DD", "YYYY-MM-DD HH:mm:ss"]);
return aMomentInTime.format("ddd, h:mmA");
});

在 View 模板的 #each block 中,我有以下内容:

{{#each Controller}}
<p>
{{time start_time}}<br/>
{{start_time}}
</p>
{{/each}}

其中 start_time 在模型中定义为 DS.attr("date")。在第一行中,我期待一个基于 start_time 值的格式化日期,遗憾的是 console.log 表明我只是得到字符串“开始时间”。给了什么?

enter image description here

作为输入字符串的结果,moment.js 尝试优雅地处理它并输出 Sat, 12:00 AM(也就是说,它不知道无意义的字符串意味着什么日期代表)。

相比之下,{{start_time}} 引用可以正常工作并输出如下结果:2013-07-09 08:00:06

最佳答案

registerHelper 不支持绑定(bind)。使用 registerBoundHelper 或仅使用 helper

Ember.Handlebars.helper('time', function(context) {
console.log("time: " + context);
var aMomentInTime = new moment(context,["YYYY-MM-DD", "YYYY-MM-DD HH:mm:ss"]);
return aMomentInTime.format("ddd, h:mmA");
});

关于ember.js - 绑定(bind)助手将参数作为字符串而不是属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17628100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com