2015-03-09 23 views
7

Secondo la v2.4.1 Marionette documentation controllori vengono deprecati:Marionette controller Best Practice

Attenzione: deprecato. L'oggetto Controller è deprecato. Invece di utilizzare la classe Controller con l'AppRouter, è necessario specificare i callback su un oggetto Javascript semplice.

Sono confuso su quali sono le migliori pratiche ora che sono deprecate? Significa che anche l'AppRouter viene deprecato? In caso affermativo, quali sono i modelli attuali utilizzati per sviluppare applicazioni di marionette su larga scala?

+0

https://github.com/davidsulc/marionette-gentle-introduction/blob/master/assets/js/ apps/contacts/contacts_app.js o buona risposta da danikoren in http://stackoverflow.com/questions/11410059/suggested-bootstrap-boilerplate-sample-for-backbone-marionette-application – zloctb

risposta

6

Probabilmente si può semplicemente usare Marionette.Object. È praticamente lo stesso del controller.

Per utilizzare un semplice JavaScript oggetto con l'AppRouter si potrebbe fare qualcosa di simile:

var MyController = Marionette.Object.extend({/*...*/}); 
    var AnotherController = Marionette.Object.extend({/*...*/}); 

    var myController = new MyController(); 
    var anotherController = new AnotherController(); 

    var plainJsObject = { 
     doStuff: myController.doStuff, 
     doSomethingDifferent: anotherController.doSomethingDifferent 
    }; 

    var router = Marionette.AppRouter.extend({ 
     controller: plainJsObject 
    });