我是Backbone Marionette JS的新手,想知道它的路由是如何工作的。任何人都可以解釋我或指出我正確的方向來看待它。Backbone Marionette JS路由器的工作原理
在此先感謝。
我是Backbone Marionette JS的新手,想知道它的路由是如何工作的。任何人都可以解釋我或指出我正確的方向來看待它。Backbone Marionette JS路由器的工作原理
在此先感謝。
你應該看看
https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.approuter.md
戴維斯蘇爾克的書Gentle Introduction to Marionette是一個很好的起點。理解Marionette.Controller和Marionette.Module的概念將有助於分離路由器以實現更好的可維護性。
Marionette路由器擴展了骨幹路由器對象。這是一個將URL註冊到方法(函數)的對象。這意味着,無論何時您導航到新的URL,您的客戶端都會向服務器(它將下載html文件和css,js導入的內部)執行GET請求。然後,將評估與該路線對應的方法。
有一個用於瀏覽器的標準。無論在#前面向服務器請求什麼,之後的任何事情都會進入你的路由器。
您只需要實例化路由器以使路由起作用。我認爲它在Backbone中註冊到一個全局變量。在Backbone中激活歷史記錄後,可以使用這些路由。
我一直在尋找這樣的東西,希望這會幫助別人。這個例子來自Davis Sulc的書籍Gentle Introduction to Marionette。
ContactManager.module("ContactsApp",function(ContactsApp,ContactManager,Backbone,Marionette_){
ContactsApp.Router = Marionette.AppRouter.extend({
appRoutes: {
"contacts": "listContacts"
});
varAPI={
listContacts: function(){
console.log("route to list contacts was triggered");
}
};
ContactManager.addInitializer(function(){ new ContactsApp.Router({
controller: API
});
});
});