すべてのモジュールにボイラープレートを追加することなく、初期化されたすべてのモジュールにstart
, stop
,イベントを自動的にバインドする方法があるかどうかを確認しようとしています。before:start
this.on('start',function() {})
これらの関数を介して基本的なログ記録/デバッグを行って、インフラストラクチャをもう少しよく理解できるようにしています。プロトタイプをオーバーライドする方法と同様のイベントを定義できれば素晴らしいと思います。
このような一見単純なタスクを達成するために追加しなければならない「ボイラープレート」のタイプの例。明らかにこれはコーヒーに入っています...
@on "before:start", ->
console.log "starting: #{Self.moduleName}"
return
@on "start", (defaults)->
_init()
console.log "started: #{Self.moduleName}"
return
@on "stop", () ->
console.log "stopped: #{Self.moduleName}"
return
_init = () ->
return
私が最初に考えたのは、何らかの方法で関数をオーバーライドしMyApp.module()
、そこにイベント バインディングを配置することでした。どうやってそれを行うのかわかりません... :-/
どうすればこれを達成できますか?