Ионный слайдер не работает слева направо - PullRequest
0 голосов
/ 31 мая 2018

Я новичок в ионике. Проблема, с которой я сталкиваюсь, заключается в том, что я пытаюсь использовать ионный слайдер с ng-repeat. Данные поступают динамически. Все работает отлично, если я проведу пальцем справа налево. Но если я скользю слевасправа появляется меню, и я не могу пролистывать содержимое.

Вот мой HTML

    <ion-slide-box dynamic-height>
    <ion-slide ng-repeat="caseload in caseloads" dynamic-slides="caseloads">
    <img src="test.png">
    {{caseload.lastName}}
    DOB: {{caseload.dob}}   {{caseload.offenderSID}}<br/>
    {{caseload.leadState}}
    </ion-slide>
    </ion-slide-box>

Вот директива, которую я использую для приложения slide

.js

    app.directive('dynamicHeight', function() {
    return {
    require: ['ionSlideBox'],
    link: function(scope, elem, attrs, slider) {
        scope.$watch(function() {
            return slider[0].__slider.selected();
        }, function(val) {
            var newHeight = $('.slider-slide', elem).eq(val).innerHeight();
            if (newHeight) {
                elem.animate({
                    height: newHeight + 'px'
                }, 500);
            }
        });
    }
    };
    })

Вот Controller.js

    function ($scope,$state,$http,$ionicSlideBoxDelegate) 
    {
    $http({
    method : 'POST',
    url : 'http://localhost:8080/ODIN/getLeadsByOfficerForMobile?
    dumId='+$scope.adminhome,
    }).then(function success(data) {
     if(data.data!=null){
        $scope.caseloads = data.data;

        console.log($scope.caseloads);
    }
    //$scope.playlists.splice(index, 1);
    });
    $ionicSlideBoxDelegate.update();
    }

Может кто-нибудь сказать, как решить эту проблему? Он отлично работает для пролистывания справа налево, но если я проведу пальцем слева направосправа вместо слайда перетаскивается главное меню.

1 Ответ

0 голосов
/ 31 мая 2018

используйте приведенный ниже код в вашем контроллере.

Примечание. Необходимо ввести $ rootScope и $ ionicSideMenuDelegate в контроллер.

CodePen для ссылки: "https://codepen.io/mhartington/pen/sqJAp"

  $rootScope.data = {
canDrag: false};

Надеюсь, эта помощь:)

...