2013-07-01 15 views
36

Tôi đã thiết lập định tuyến của tôi trong góc và tất cả hoạt động tốt:Telling góc Js để bỏ qua một lộ trình cụ thể

$locationProvider.html5Mode(true); 
$routeProvider. 
     when('/', { templateUrl: '/Home/Index' }). 
     when('/User', { templateUrl: '/User/Index' }); 

Tuy nhiên bây giờ tôi có một thẻ neo để làm việc như một nút logout mà chỉ sẽ chuyển hướng người dùng tới/User/Logout và đăng xuất sau đó sẽ đăng xuất người dùng và chuyển hướng họ đến trang đăng nhập. Vì vậy, những gì tôi muốn là cho js góc để bỏ qua con đường cụ thể này và cho phép nó để làm một chuyển hướng http bình thường. Điều này có vẻ như một cái gì đó nên được thực sự dễ dàng nhưng tôi đã không thể tìm thấy một giải pháp cho vấn đề.

Tôi biết tôi có thể thực hiện một sự kiện nhấp và thực hiện thay đổi window.location trong sự kiện nhấp chuột nhưng điều đó có vẻ như thực sự là một cách để thực hiện.

Trả lời

96

chỉ định target="_self" trong các neo của bạn, để các angularj không viết lại URL. Xem các cuộc thảo luận ở đây: http://docs.angularjs.org/guide/$location

+0

Awesome, cảm ơn. Đây chính xác là những gì tôi đang tìm kiếm –

+0

Điều này là cần thiết đối với tôi trong Dropdown of Bootstrap! – dude

+0

Điều này đã giúp tôi nhận được các liên kết Đăng ký và Đăng nhập hoạt động trong mẫu MVC 6, trong đó phần còn lại của ứng dụng của tôi là Angular. – Chris

0

Bạn có thể sử dụng một chức năng với redirectTo thêm:

.when('/User/Logout', { 
      redirectTo: function(obj,path,search) { 
       window.location.href=path; 
      } 
     }) 
+0

Bạn có chắc đây là câu trả lời cho câu hỏi đó không! – M98

Các vấn đề liên quan