2014-10-28 2 views
1

다른 질문이 없기 때문에 내 질문에 약간의 어려움이있을 수 있습니다.AngularJS : 조건부로 뷰 애니메이션을 적용하는 방법은 무엇입니까?

보기 애니메이션을 수행하고 싶지만 항상 그런 것은 아닙니다. 지금까지 .css 형식의 애니메이션을 사용했습니다 :

.view.ng-enter{ 
    animation: view_enter @anim-view-dur; 
} 

.view.ng-leave{ 
    animation: view_leave @anim-view-dur; 
} 

그래서 한 페이지에서 다른 페이지로 이동할 때 수행됩니다.

애니메이션보기를 적용하지 않으려는 정확한 경우는 ScrollSpy Bootstrap 사이드 바가 작동하는 페이지에 있습니다. 이 뷰 내에서 이후, 나는 기능 앵커 링크를해야했다 :

$scope.scrollTo= function (id){ 
     $location.hash(id); 
     $anchorScroll(); 
    }; 

을 그리고이 함수가 호출 될 때, 그것은보기 애니메이션을 트리거합니다. 이 경우보기 애니메이션을 트리거하지 못하게 할 수있는 방법이 있습니까?

대단히 감사합니다.

// Routes config 
app.config(function($routeProvider) { 
    $routeProvider 
    .when("/", { 
     templateUrl : "main.htm" 
     controller : "MyController" 
     reloadOnSearch : true   
    }) 
}); 

또한 뷰 새로 고침을 트리거에서`scrollTo` 기능을 방지하는 것이 허용 될 수 router-ui

+1

이 사용할 수, 또는 무언가가 그 것입니다 : – tasseKATT

+0

@tasseKATT'$ locationChangeStart ', function (ev) { ev.preventDefault(); });'에'$ scope. $를 사용하여 시도했지만 링크와 같이 경로를 변경하지 않습니다. 얼어 붙다. 보기를 다시로드하지 못하도록 다른 방법이 있습니까? 고마워요 –

+0

유스 케이스에 맞는지는 말하기 어렵지만'reloadOnSearch'를 라우트에 대해'false'로 설정해보십시오. 예 :'templateUrl : 'template.html', 컨트롤러 : 'SomeController', reloadOnSearch : false' – tasseKATT

답변

0

나를 위해 일하는 필수?
관련 문제