2015-01-22 2 views
1

속성을 추가하면 ng-click이 두 번 연속으로 발사되는 이온 각형 앱이 있습니다 (원하는 경우 버튼을 두 번 클릭하지 못하도록).각도로 누를 때 버튼을 클릭하면 두 번 연속으로 켜지는 이유는 무엇입니까?

ng-disabled 속성이있는 행이 두 번 발사됩니까?

<button ng-if="post._id" 
    class="button button-block button-outline" 
    ng-click="createPost()" 
    ng-disabled="isSaving">Update</button> 
+1

'isSaving'은 어디에서 왔습니까? –

+0

나는 당신이하고있는 일을 알고 있다고 생각하며, 이것에 대한 깔끔한 해결책이 있습니다. 내가하는 일은 회 전자로 버튼의 내용을 전환 한 다음 메서드에서'if (isSaving) return;이라고 말하면 –

+0

이 제대로 작동합니다. http://plnkr.co/edit/NYLJuN5MyjtfFUv2uIzh –

답변

-1

내가 당신의 문제에 대한 답을 가지고하지 않은,하지만 난 당신의 문제에 대한 또 다른 해결책을 가지고, 나는 여기에 따라 버튼의 내용을 설정 networkInfo라는 지시어를 만든 plnkr

입니다 여부 네트워크 통화가 이루어지고 있는지 확인합니다.

완벽한 방법은 아니지만 link은 7 줄에서 작동하며 두 개의 속성이있는 버튼은 나쁘지 않습니다.

속성 makingCall은 호출이 수행되는지 여부에 대한 부울입니다. networkInfo 속성은 지시문을 시작하고 함수 범위를 link 함수 범위로 시작합니다.

update() 함수는 $timeout을 사용하여 ($http 등을 사용하여) 비동기 네트워크 호출을 모방합니다.

먼저 vm.working을 확인하고 true 인 경우 다른 네트워크 호출을하지 마십시오. 그런 다음 지시문에 현재 통화 중임을 알리기 위해 메시지를 true으로 설정합니다.

마지막으로 2secs 뒤에는 vm.working이 false로 설정되어 네트워크 호출이 종료되었음을 나타냅니다.

분명히 내가 부 풀러를 사용했다. 왜냐하면 그게 내가 잘 알고있는 것이기 때문에, 그러나 그 아이코닉 스타일처럼.