我可以动态更改映射路由中定义的模块吗?

时间:2015-02-05 19:53:31

标签: javascript durandal durandal-2.0

假设我定义了以下Durandal路线图......

vm.router.reset()
    .makeRelative({
        moduleId: 'salesorder/createorder',
        fromParent: true,
        route: ':cartId'
    })
    .map([
        { route: 'orderheader', moduleId: 'orderheader', title: 'Order Information', nav: 1, hash: '#createorder/' + cartId + '/orderheader' },
        { route: 'orderdetail', moduleId: 'orderdetail', title: 'Order Lines', nav: 2, hash: '#createorder/' + cartId + '/orderdetail' },
        { route: 'payment', moduleId: 'payment', title: 'Payment', nav: 3, hash: '#createorder/' + cartId + '/payment' }
    ])
    .buildNavigationModel();

...我可以修改路线图,专门将与“付款”相关的模块更改为其他模块 - 比如说“支付客户特定”吗?我想在中间路线中执行此修改 - 在导航到路线'付款'之前的'orderdetail'模块中,以便使用特定版本的支付模块。

我理解参数化路由存在,但由于我正在使用的当前代码库,它们无济于事。我知道我可以提前为正确的模块创建地图,但同样,当前的代码库限制了这一点。寻找能够在事后修改映射的路由到模块关系的能力。

0 个答案:

没有答案