これが私のルーター構成です:
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 にありますが、他のビュー/vm でフォルダーを指定する必要はありません...なぜ見つからないのですか?
編集ジョセフの提案に従って、「エラー」でアクティブにすると、次のようになります。
私はとても混乱しています...なぜそれはすでに正しい場所にあるのにerror.jsを探しているのですか?なぜその場所でhtmlドキュメントを見つけようとしていると思いますか?
私は従来のファイル構造を持っています: