2015-02-05 33 views
0

有許多放置在定義一個輔助文件的任何(棘手的,學究氣的,或以其他方式時皺起了眉頭)的方式...燼CLI單個文件內的多個DEFS,打破命名約定

例如,我有以下似乎不需要每個文件的助手。

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'); 
}); 

即時通訊從一個ember proj移植,其中一切都被集中到非常少的文件。

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; 4出口默認功能的startApp(ATTRS){ 5 // ...

回答

0

如您在文件之前做過外國稅發helpers目錄,您可以簡單地註冊的助手。

它們可以被註冊爲:

Em.Handlebars.registerBoundHelper('make-plural', function(word) {...})

[注意所有的助手現在應該已經破滅名稱作爲車把處理的效率。]

我把我的助手在一個文件中app/utils並從頂部的app.js導入。這使得app.js保持乾淨,但將所有小助手放在一個文件中,並放在一個易於管理的明智位置。

約定的自動註冊助手只是EmberCLI的一個功能,您可以使用或忽略它。