【问题标题】:Durandal: Include splat inside compose bindingDurandal:在组合绑定中包含 splat
【发布时间】:2014-11-12 08:46:24
【问题描述】:

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

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

这就是我尝试用一​​些 splat 参数在自定义模式视图中

组成视图的方式
<div data-bind="compose: 'views/projects/thisIsOptionalSplatParameter'"></div>

这不起作用。只有当我直接在地址栏上更新它时它才有效。

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

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

http://localhost/#projects/modalTrue

并使用项目页面中的激活函数检索它:

var isInModal;

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

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

【问题讨论】:

    标签: knockout.js durandal knockout-2.0 durandal-2.0 durandal-navigation


    【解决方案1】:

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

    【讨论】:

    • 完美!!这就是我需要的!非常感谢!
    猜你喜欢
    • 2014-05-20
    • 1970-01-01
    • 2014-06-01
    • 1970-01-01
    • 2015-09-19
    • 2015-11-17
    • 2013-03-23
    • 2017-03-15
    • 1970-01-01
    相关资源
    最近更新 更多