AngularJS - использование перенаправления ngTouch с ngRoute не работает с атрибутами href и ng-click
Я перемещаюсь по приложению с помощью ngRoute. Я использую ссылки как:
<a href="#/page2" ng-click="showOffCanvas = false">Link</a>
Поскольку я использую ngTouch, навигация не работает на сенсорных устройствах. Я попробовал это с телефоном андроида и с эмулятором устройства Chrome. На рабочем столе все отлично работает.
Когда я удаляю ngTouch, эта проблема исчезает. Он также исчезает, когда я удаляю атрибут ng-click.
Ссылка на:
<a href="www.google.com" ng-click="showOffCanvas = false">google</a>
работает на каждом устройстве. Кажется, что только маршрутизация с ngRoute перестает работать, когда я включаю ngTouch.
Какое будет решение?
1 ответ
Это старая ошибка, которая не была исправлена до этого времени. Href и ng-click не работают вместе.
Обходным путем может быть использование пустого href и помещение логики навигации в ng-click с использованием $location.
Доказательство: https://github.com/angular/angular.js/issues/5307
В HTML:
<a href="" ng-click="showOffCanvas = false; goTo('#/page2')">Link</a>
В контроллере:
$scope.goTo = function(refer){
$location.path(refer)
};