Включить ионный жест смахивания назад

У меня есть следующий код:

личная информация.html

<ion-view view-title="Personal Information" can-swipe-back="true">
  <ion-nav-buttons side="left">
    <button class="button button-icon icon  ion-ios-arrow-left" ng-click="doTheBack()" nav-direction="back"></button>
</ion-nav-buttons>
  <ion-content class="padding">
    <div class="list card">
      <div class="item item-divider">Recent Updates</div>
      <div class="item item-body">
        <div>
          There is a fire in <b>sector 3</b>
        </div>
      </div>
    </div>
  </ion-content>
</ion-view>

и мой контроллер

.controller('PersonalInfoCtrl', function($scope) {
  $scope.doTheBack = function() {
  window.history.back();
};
});

Я хочу включить функцию прокрутки назад, которую я пробовал, поместив can-swipe-back="true" внутри тега <ion-view>, но это совсем не помогло. Также я проверил много документации, а также этот вопрос Как Вы прокручиваете, чтобы вернуться в Ionic? но кажется, что функция прокрутки назад не включена для моего приложения.


person radioaktiv    schedule 04.08.2015    source источник


Ответы (1)


Я реализовал это через $ionicNavBarDelegate. В HTML:

<ion-view view-title="Personal Information">
  <ion-content on-swipe-right="swipe('right')" class="padding">
    <div class="list card">
      <div class="item item-divider">Recent Updates</div>
      <div class="item item-body">
        <div>
          There is a fire in <b>sector 3</b>
        </div>
      </div>
    </div>
  </ion-content>
</ion-view>

В контроллере:

$scope.swipe = function (direction) {
                 if(direction == 'right') 
                   $ionicNavBarDelegate.back();
               }

Обязательно включите $ionicNavBarDelegate в заголовок вашего контроллера.

Если это не сработает, взгляните на http://forum.ionicframework.com/t/any-sample-code-on-how-to-use-swipe-to-go-back/19122/13. Похоже, что свайп для возврата работает по умолчанию, начиная с RC0, как показано на http://codepen.io/mhartington/pen/RNqpJp.

person MashterYoda    schedule 05.08.2015
comment
Спасибо. Это сработало. Еще вопрос, как сделать его плавным? Прямо сейчас он переходит к предыдущему экрану без какого-либо перехода. - person radioaktiv; 05.08.2015