如何使用指定了ID的router.activate()?

时间:2013-05-26 01:42:48

标签: durandal

我映射了以下路线:

        router.map([
            { url: 'error', moduleId: 'viewmodels/error', name: 'Error', visible: false },
            { url: 'home', moduleId: 'viewmodels/home', name: 'Home', visible: false },
            { url: 'folder/:id', moduleId: 'viewmodels/folder', name: 'Folder', visible: false },
            { url: 'set/:id', moduleId: 'viewmodels/set', name: 'Set', visible: false }

        ]);

在映射这些路线后,我激活了路由器。目前我在做:

return router.activate('home');

但我想做一些像

这样的事情
return router.activate('folder/2');

然而我得到以下错误:

GET http://localhost:11089/App/viewmodels/folder/2.js 404 (Not Found)

1 个答案:

答案 0 :(得分:0)

我可能错了,但我相信当前的路由器可能不支持这个。

你应该使用router.navigateTo。

但我认为你在Google群组中找到了答案:D

对于其他人: https://groups.google.com/forum/#!topic/durandaljs/3QxMsJjsy1s https://groups.google.com/forum/#!searchin/durandaljs/router.activate/durandaljs/3QxMsJjsy1s/TUomWbMSrQgJ