2017-02-02 2 views
0

У меня есть приложение Ionic, которое обертывает определенное веб-приложение, которое использует угловые.Ионная кнопка ng-click иногда не распознается

Там, у меня есть несколько кнопок, как это:

<ion-view view-title="Orders"> 
    <ion-content scroll="true" overflow-scroll="true"> 
    <div class="row"> 
     <!-- some other divs with text only --> 
    </div> 
    <div class="row"> 
     <div class="col-xs-12"> 
     <button type="button" ng-click="vm.go('orders.new')" 
      class="button btn btn-lg btn-info">new order</button> 
     </div> 
    </div> 
    </ion-content> 
</ion-view> 

Иногда метод vm.go() не вызывается, когда я нажимаю/прикосновение к кнопке. В Chrome (браузере) и Android он всегда работает правильно. Даже если я открою страницу через обычный браузер Safari на iOS, все работает.

Таким образом, это проблема с ионной и/или кордовой.

Если я прикрепляю обработчик событий вручную (с помощью обычного JavaScript с использованием getElementById()) к кнопке для обнаружения событий касания или мыши, они увольняются, но ng-click нет. Если это произойдет, и метод кнопки не будет правильно запущен, представление прокручивает/устанавливает вместо этого вид сверху.

Для меня это похоже на какое-то состояние гонки, так что иногда бывает правильное поведение (вызывается ng-click), а иногда и нет.

Использование Ионные 1.3.2 и 6.0.0 Кордову

ли кто-то имеет какие-либо идеи для этого?

+0

Можете ли вы предоставить родительский элемент вашей кнопки, пожалуйста? – Mistalis

+0

Да - обновил мой вопрос! – Indivon

ответ

0

Существует один DIV, который блокирует кнопку от 330ms,

На "beforeenter" добавить:

angular.element(document.getElementsByClassName('click-block')).addClass('click-block-hide'); 

С этим wiev будет реагировать с начала.

+0

Почему этот div там в первую очередь? – FabianTe

Смежные вопросы