2017-05-10 8 views
0

ASP.Net MVCプロジェクトでdurandal 2.1.0を使用しています。 ビューが、私は彼らがそうのようにそのビューにアクセスできるかどうかを示すためにcanActivate機能を使用してアクセスされた場合:canActivate中のDurandalリダイレクト

self.canActivate = function() { 
     return http.ajaxRequest("get", "/api/route/hasaccesstoroute?route=viewname") 
      .done(function (result) { 
       if (!result) { 
        app.showMessage("You do not have permissions to access this area!"); 
       } 
      }); 
    }; 

これはうまく動作しますが、私は一つのビューのために行う必要があることは別のビューにリダイレクトすることで、問題が発生しましたそうする。どのようにそれに応じて変更するに役立つことができますか?私はnavigateToを試みたが、これは有効な機能ではないと言った。

答えて

2

私はこれを考え出したし、誰がこれを実行する必要があるのに疑問残した:

return http.ajaxRequest("get", "/api/route/hasaccesstoroute?route=viewname").then(function (response) { 
      if (response == true) { 
       return true; 
      } 
      else { 
       return { redirect: "#/viewname" }; 
      } 
     }); 
関連する問題