是否存在将许多定义放在单个帮助文件中的方法(棘手,愚蠢或其他不赞成的方式)......
例如,我有以下助手,似乎不保证每个文件。
Ember.Handlebars.helper('format-markdown', function(input) {
return new Handlebars.SafeString(showdown.makeHtml(input));
});
Ember.Handlebars.helper('format-fromnow', function(date) {
return moment(date).fromNow();
});
Ember.Handlebars.helper('format-long', function(date) {
return moment(date).format('MMMM Do YYYY, h:mm:ss a');
});
Ember.Handlebars.helper('format-currency', function(mynumber) {
return numeral(mynumber).format('$0,0.00');
});
从imer portj移植,其中所有内容都被归为极少的文件。
ACH。我在文档中找到了它的一个例子。 但不清楚进口的去向。
1 // helpers/custom-helpers.js
2 var customHelpers = function() {
3 Ember.Test.registerHelper('myGreatHelper', function (app) {
4 //do awesome test stuff
5 });
6
7 Ember.Test.registerAsyncHelper('myGreatAsyncHelper', function (app) {
8 //do awesome test stuff
9 });
10 }();
11
12 export default customHelpers;
是startApp的一个特殊入口点。这似乎不起作用。 1 // helpers / start-app.js 2从'./custom-helpers'导入customHelpers; 3 4 export default function startApp(attrs){ 5 //...
答案 0 :(得分:0)
您可以像以前一样在helpers
目录之外的文件中注册帮助程序。
他们可以注册为:
Em.Handlebars.registerBoundHelper('make-plural', function(word) {...})
[请注意,所有助手现在都应使用虚线名称作为手柄处理的效率。]
我将帮助者放在app/utils
的文件中,并从顶部的app.js
导入。这样可以保持app.js
干净,但是将所有小帮助者放在一个容易管理的合理位置的单个文件中。
按惯例自动注册帮助程序只是您可以使用或忽略的EmberCLI的一个功能。