#angularjs #path #location
#angularjs #путь #Расположение
Вопрос:
У меня есть функция в AngularJS, которая использует $location.path
. На моем настольном компьютере все работает нормально, однако, когда я попытался использовать его на своем iPhone или планшете Android, путь не меняется.
Я прочитал, чтобы включить $scope.apply()
; после $location.path
, это не работает для меня. Кроме того, я включил два предупреждения, чтобы узнать, запущена ли функция. Срабатывают Alert: Test1 и Alert: Test2.
app.controller('matchesCtrl', ["$scope", "$modal", "$filter", "$interval", "$translate", "Data", "$localStorage", "$location", function($scope, $modal, $filter, $interval, $translate, Data, $localStorage, $location) {
$scope.BeginMatch = function(c) {
alert('Test1');
Data.put('match/umpire/' $scope.$storage.id, $scope.$storage).then(function() {
alert('Test2');
window.navigator.vibrate(200);
$location.path('match/warmup/' $scope.$storage.id);
$scope.$apply();
});
};
}]);
Путь должен быть изменен на match/warmup/"id"
, но путь остается таким же, как и раньше.
Ответ №1:
Спустя более 4 часов я выяснил ошибку. window.navigator.vibrate(); не поддерживается браузерами на мобильных устройствах. Извините за неудобство.