这是我的路由器配置:
router.useConvention();
router.mapRoute('error', 'viewmodels/error', "Error");
router.mapNav('home');
router.mapRoute('api', 'viewmodels/api', 'API Reference');
router.mapRoute('set/:id', 'viewmodels/set', 'Set');
router.mapRoute('folder/:id', 'viewmodels/folder', 'Folder');
router.handleInvalidRoute = function (route, params) {
//debugger;
router.navigateTo('#/error');
};
logger.log('app has loaded :)', null, null, false);
return router.activate('home');
我可以找到 /api 和其他页面,但是当我输入无效路由时,chrome 控制台会显示以下内容:
就像其他页面一样,我有 error.js 和 error.html。它在 App/viewmodels/error.js 中,但我不必指定包含任何其他视图/vms 的文件夹...为什么找不到它?
编辑根据约瑟夫的建议,我激活了“错误”,我得到了这个:
我很困惑......为什么它已经在正确的位置找到了error.js,为什么它认为它会在那个位置找到一个html文档?
我有一个传统的文件结构: