2013-03-25 38 views
0

是否有可能有一個控制器,保持其狀態活着,也迴應路線?
例如,我會在應用程序的initControllers方法中啓動一個PlayerController,然後我還需要它來響應像/ player/trackID這樣的路線,以便我可以更改當前播放的曲目。卓別林js永久性控制器,迴應路線

回答

1

是的,您可以創建一個控制器,該控制器在應用程序的整個生命週期內都處於活動狀態。正如你所提到的在應用程序的initControllers方法中實例化PlayerController,並在routes.js中定義要綁定到PlayerController特定方法的route/player /:trackID。

例如route.js將看起來像

match('player/:trackID', 'player#playTrack', {name:'playtrack'}); 

在上面的路線playTrack是PlayerController的方法。

+0

你確定路由器不啓動控制器的新實例嗎?這是我從測試中注意到的。 – 2013-04-02 14:49:52

+0

@NickDima,我試過並觀察到與你提到的相同的行爲。無論何時匹配路由,都會爲匹配的控制器創建一個新實例。現在我也不知道如何攔截路由匹配函數來使用已經實例化的控制器。如果您找到答案,請在此分享。 – 2013-04-03 18:37:30