0

我在 shell.js 中配置了这个splat 路由

 router.map([
   { route: 'projects*modal', title: 'Projects', moduleId: 'views/projects', nav: true },
]).buildNavigationModel();

这就是我尝试在自定义模式视图中使用一些 splat 参数组合视图的方式

<div data-bind="compose: 'views/projects/thisIsOptionalSplatParameter'"></div>

这行不通。它仅在我直接在地址栏上更新时才有效。

那么,如何在compose 绑定到路由中包含一些参数?

我需要让页面知道我是否在模式中使用它。所以我需要传递这样的东西:

http://localhost/#projects/modalTrue

并使用项目页面中的激活功能检索它:

var isInModal;

activate: function(params)
{
   if (typeof params !== 'undefined' && params !== null && params.replace('/', '') === 'modalTrue')
        isInModal = true;
    else
        isInModal = false;
}

任何帮助将不胜感激!
谢谢

4

1 回答 1

1

您是否尝试过利用compose 绑定的activationData 属性?您的外部视图可能会捕获路由参数,将其存储在可观察对象中,该可观察对象再次通过activationData 提供给组合视图。

于 2014-09-19T09:07:00.960 回答