Ember.js助手和Handlebars.js(仅运行时构建)



是否有任何方法可以预编译Handlebars模板,使其了解Ember.js助手,如"action"、"view"等。?

我问这个问题的原因是,我需要将Ember.js与Handlebars的仅运行时构建一起使用(由于Google Chrome中的CSP),而Ember.js目前似乎并不完全支持这样的场景:https://github.com/emberjs/ember.js/issues/1303

您可以使用Ember.Handlebars.precompile(Ember-handlebas/lib/ext.js#L104)预编译Ember-Handlebars模板。

在浏览器外(例如,在节点中)预编译使用的基本策略是:

  • 装载车把.js
  • 加载ember.js
  • 去掉Ember期望的一些浏览器API(这在1.0中不应该是必要的,但在今天是必要的)
  • template = Ember.Handlebars.precompile(string)
  • Ember.TEMPLATES[name] = Ember.Handlebars.template(template)

如果您有一个扩展名为.handlebars的资产,那么ember-railsgemforRails就可以为您实现这一点。

ember-rails-gem还维护了一个填充程序.js文件,您可以使用该文件在其他非浏览器环境中进行预编译(ember-precompiler.js)。

最新更新