【问题标题】:Nested 'Shells' with Durandal SPA使用 Durandal SPA 嵌套“壳”
【发布时间】:2013-06-03 19:22:57
【问题描述】:

使用 Durandal,我可以拥有一个可以显示和查看多个视图的外壳。

我有一个场景,我有一个链接的左侧菜单,单击链接应将新视图加载到右侧区域。左右区域都在一个视图中。

Durandal 可以做到以上几点吗?

谢谢

【问题讨论】:

    标签: asp.net-mvc-4 knockout.js durandal


    【解决方案1】:

    您不需要多个 shell 来完成此操作。只需创建一个 html 页面,从您的 shell.html 编写它,然后像往常在 shell 中一样简单地将其绑定到数据。如果您只想为导航创建自定义视图模型,您也可以这样做,尽管它不是必需的。如果您这样做不仅仅是从您的 shell.js 中公开该视图模型并像往常一样调用它。 navmenu.menuOptions

    【讨论】:

    • 也许我没有提到那些左右 div 是单个视图的一部分,它本身将被另一个可能具有另一种结构的视图所取代。换句话说,我有主要路线和次要路线。导航主视图的主要路线,而次要路线用于浏览视图并将它们放置在右侧 div 中。
    • 你能分享你到目前为止得到的东西,并进一步解释你想要完成的事情吗?您可能想查看knockout samplesview compositinmaster detail 以查看各种示例。您可能需要结合这些来完成您正在寻找的东西。
    • +1 对 Rainer 的回答。在您的评论中,您说它们是单个视图的一部分,但请记住 - 对于 KO 视图组合,它们不一定是。您可以使用 来显示视图或带有视图模型的视图。我在我正在处理的应用程序中使用“模板”导航菜单,它对将要显示的内容一无所知,只是它以一般格式显示某些内容。 shell 视图模型决定它显示什么,听起来你正在尝试完成同样的事情。
    猜你喜欢
    • 2013-03-25
    • 2015-11-19
    • 2017-03-08
    • 2014-05-10
    • 2015-04-02
    • 2013-03-02
    • 1970-01-01
    • 2016-06-18
    • 2013-03-07
    相关资源
    最近更新 更多