包含 backbone 条路线的嵌套视图

nested views with backbone routes

我想使用路线在 backbone 应用程序中导航我的嵌套视图。我有下一个代码:

var StoreRouter = Backbone.Marionette.AppRouter.extend({

  appRoutes: {
    'item/:name/' : 'showItem',
    "item/:name/species/:speciesName/" : "showSpecies"
  }

});

var StoreCtrl = Marionette.Object.extend({

  showItem: function(name){
    console.log("showItem");
    /* execute function for show Item */  
  },

  showSpecies: function(name, speciesName){
    console.log("showSpecies");
    /* execute function for show Species inside Item Layout  */ 
  }

});

所以,我需要在路线为 "item/:name/species/:speciesName/" 时显示物种,但我只触发了 showSpecies 功能,而不是两者。当路由为 "item/:name/species/:speciesName/" 时,我应该如何触发 showItem 和 showSpecies 函数?

这里没有什么新鲜事。只需直接从 showSpecies.
调用您的 showItem 函数 此外,您可以使用 routes 散列而不是 appRoutes 然后可以这样做:

var StoreRouter = Backbone.Marionette.AppRouter.extend({

  routes: {
    'item/:name/' : 'showItem',
    'item/:name/species/:speciesName/' : function(){
      this.showItem();
      this.showSpecies();
    }
 }

});