Handlebars助手和Ember Handlebars助手有什么区别? [英] What's the difference between Handlebars helpers and Ember Handlebars helpers?

查看:214
本文介绍了Handlebars助手和Ember Handlebars助手有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法赶上所有对普通手把和修改的Ember Handlebars助手所做的所有修改。如果我记得正确,可以使用以下方法注册一个帮手

I can't catch up with all those changes done to plain Handlebars and modified Ember Handlebars helpers. If I remember correctly you can register a helper with the following methods


  • Ember.Handlebars.helper

  • Ember.Handlebars.registerHelper

  • Ember.Handlebars.registerBoundHelper

  • Handlebars.registerHelper

  • Ember.Handlebars.helper
  • Ember.Handlebars.registerHelper
  • Ember.Handlebars.registerBoundHelper
  • Handlebars.registerHelper

对我来说太多了你能解释一下它有什么区别吗?

That's too much for me. Could you explain it down to earth what's the difference?

推荐答案

Ember.Handlebars.registerHelper 是一个基本的帮助器,不会将参数字符串绑定到属性。例如,考虑使用 registerHelper 创建的 hello ,只需返回一个问候消息。

Ember.Handlebars.registerHelper is a basic helper that does not bind the argument string to a property. For instance, consider a hello helper created with registerHelper that just returns a greeting message.

Ember.Handlebars.registerHelper('hello', function(name) {
  return 'Hello ' + name;
});

当您在模板中使用它时,

When you use it in a template,

{{hello name}}

你会得到显示文本为 Hello name 名称属性的值查找。

You will get the display text as, Hello name. The value of the name property is not looked up.

要获取值的名称属性到您需要的帮助器, registerBoundHelper 。顾名思义,它会在名称属性之间创建绑定。任何时候名称更改帮助器再次被调用以重新安装。执行类似于

To get the value of the name property into the helper you need, registerBoundHelper. As the name suggests it creates a binding between to the name property. Anytime the name changes the helper is called again to rerender. The implementation is similar,

Ember.Handlebars.registerBoundHelper('hello', function(name) {
  return 'Hello ' + name;
});

Ember.Handlebars.helper 是一样的作为 registerBoundHelper ,还有一些额外的检查来自动检测你想要什么样的帮手。

The Ember.Handlebars.helper is same as registerBoundHelper with some additional checks to autodetect what kind of helper you want.

Ember中没有使用香草 Handlebars.registerHelper 它将为不使用Ember的项目创建类似的帮助。

The vanilla Handlebars.registerHelper isn't used within Ember. It would create similar helpers for projects not using Ember.

这篇关于Handlebars助手和Ember Handlebars助手有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆