7

随着我的应用程序的增长,我觉得需要更结构化的路由器/控制器设置。Marionette 文档提到以下内容:

建议您将控制器对象划分为较小的相关功能块,并拥有多个路由器/控制器,而不是只有一个巨大的路由器和控制器。

如果有这种结构的例子,那就太好了。假设我有一个由三个部分组成的网站;人物、媒体和文章。理想情况下,我希望每个部分都有路由器/控制器。像这样的东西:

App
  -- AppRouter
       -- AppController
            -- AppLayout
            -- PeopleRouter
               -- PeopleController
                  -- PeopleLayout
            -- MediaRouter
               -- MediaController
                  -- MediaLayout
            -- ArticleRouter
               -- ArticleController
                  -- ArticleLayout

对我来说非常不清楚的是如何让路由(“/people/detail/1”)由另一个路由器而不是 AppRouter 处理。似乎我必须为每个部分创建模块,但这是否适用于 RequireJS?使用两种不同类型的模块似乎有点奇怪......

如果有人能指出我正确的方向,那就太好了,我在网上找到的所有例子都让我有点困惑。

4

1 回答 1

5

看看我在Marionette 书中开发的示例应用程序

你可以看到2个路由器文件:

如果您想了解有关本书中使用的路由方法的更多信息,请参阅示例中有关该主题的免费章节。虽然它没有解释各种路由器文件,但它解释了将应用程序状态管理与 URL 管理分离的想法;您可能会感兴趣。

希望这可以帮助 !

于 2013-11-05T09:35:37.210 回答