gpt4 book ai didi

ember.js - 编写一个产生绑定(bind)结果的助手?

转载 作者:行者123 更新时间:2023-12-02 10:14:54 25 4
gpt4 key购买 nike

我有一个日期/时间格式化助手,但当底层属性更改时,它生成的内容不会更新。这并不奇怪,但是有人知道如何在助手中生成绑定(bind)吗?

我像这样调用助手......

{{timestamp created_at}}

...这是助手本身:

Handlebars.registerHelper('timestamp', function(context, options) {
var formatter = options.hash['format'] ? options.hash['format'] : 'hh:mm a MM-DD-YYYY';
var original_date = Ember.getPath(this, context); // same as this.get(context) ?
var parsed_date = moment(original_date);
var formatted_date = parsed_date.format(formatter);

return new Handlebars.SafeString("<time datetime=" + original_date +">" + formatted_date + "</time>");
});

最佳答案

现在可以使用公共(public) Ember API 创建绑定(bind)的 Handlebars 助手。

Handlebars.registerBoundHelper('timestamp', function(date, options) {
var formatter = options.hash['format'] ? options.hash['format'] : 'hh:mm a MM-DD-YYYY';
var parsed_date = moment(date);
var formatted_date = parsed_date.format(formatter);

return new Handlebars.SafeString("<time datetime=" + date +">" + formatted_date + "</time>");
});

传递给helper的参数已经被解析,每当路径改变时,helper就会被再次调用。

关于ember.js - 编写一个产生绑定(bind)结果的助手?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8837958/

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