2016-07-06 5 views
0

ページをロードしていますが、ページに条件があります。条件がfalseの場合、別のURLで$ window.location.hrefを使用してURLをリダイレクトしていますが、別のURLにリダイレクトする前に、デフォルトのページビューが最初に表示されていて、別のURLがリダイレクトされています。私は何をすべきか混乱しています。何か解決策を教えてください。角度jsで条件がfalseの場合、ビューをロードせずに別のURLにリダイレクト

function get_bookings() { 
    $http.post($scope.domailurl + 'api/class/booking.php?action=get_booking', { 'id': urlid }).success(function(data, status) { 
     spinnerService.show('booksSpinner'); 
     if (data.ticket && data.ticket != "") { 
      $window.location.href = $scope.domailurl + '#/attendeesprint/' + data.ticket; 
     } 
    }); 
} 

答えて

0

私はあなたが意味しているものは100%確実ではないが、私は助けるかもしれないいくつかの提案を持っています。

最初の提案は、$locationサービスアングルを使用することです。 $ scope.domailurl変数を保持する代わりに、次の行を使用することができます。しかし、私はこのパスがあなたのアプリケーションの中にまだあると仮定しています。これにより、もはやフルページのリフレッシュが発生しなくなったため、デフォルトのページが表示されている問題を解決できます。

$location.path('/attendeesprint/' + data.ticket); 

私の第二の提案はspinnerService.show( 'booksSpinner')を移動させるであろう。行を$ http呼び出しを行う前に実行してください。これにより、非同期サーバー操作中にスピナーが表示されるようになります。

+0

私は完全なURLを変更しなければならない – mishraoft

関連する問題