Durandaljs可以做区域

时间:2013-03-14 17:44:17

标签: durandal

我正试着看看Durandaljs是否有办法去做区域

的内容
/App/areas/home
                /views
                /viewmodels
          /other
                /views
                /viewmodels

我看到viewLocator允许这个约定:

 viewLocator.useConvention('viewmodels', 'views', 'areas');

但router.useConvention()似乎默认为相同的路径。

是否有正确的方法来解释这一点,文档在这方面很明显。

1 个答案:

答案 0 :(得分:2)

是的,你可以这样做。

由于您使用的是Durandal.router,您可以通过覆盖路由器autoConvertRouteToModuleId来使用查找ViewModel的约定,如下所示:

router.autoConvertRouteToModuleId = function(url, params) {
    return url + '/' + 'params[0]';
};

至于找到绑定到viewmodel的视图,那么你可以像上面那样..更改viewlocator约定。