2017-04-19 19 views
1

我有這個元素與ng-repeat加載數據並創建幻燈片(從後端服務器)。離子滑塊 - 在ng-repeat完成後如何通過索引選擇特定滑塊後?

我有一個按鈕,用戶鎖定特定的幻燈片,我保存「有一個幻燈片鎖定」的狀態和鎖定幻燈片的索引。

到目前爲止,問題出在用戶離開屏幕後回來,如果有某個滑塊的「鎖定狀態」,它必須使用先前保存的de索引更改爲該滑塊(我無法找到更好的方法)。

所以在$範圍在$( '$ ionicView.afterEnter',函數(){})我:

if ($rootScope.swiperLocked) { 
    var nextSlide = 2; //$rootScope.initialSlide 
    $rootScope.swiperLocked = false; 
    $scope.slider.unlockSwipes(); 
    console.log('locked at ' + nextSlide); 
    $scope.slider.slideTo(nextSlide); // This is NOT WORKING 
    //$rootScope.swiperLocked = true; 
    //$scope.slider.lockSwipes(); 
} 

模板:

<ion-slides options="data.sliderOptions" slider="data.sliderDelegate"> 
    <ion-slide-page ng-repeat="card in profile.cards track by $index"> 
    <!-- content here --> 
    </ion-slide-page> 
</ion-slides> 

我能要改變我的具體指數?假設我已經用索引2鎖定幻燈片,然後當我回到這個屏幕時,我想要顯示幻燈片。

感謝任何幫助。 謝謝。

回答

1

忘記$scope.$on('$ionicView.afterEnter', function() {})的事情。試用sliderOptions

使用initialSlide在選項:

$scope.data.sliderOptions = { 
     'initialSlide': 0, // <-- Update your locked page index here! 
     'loop': false, 
     'direction': 'vertical' // Or "horizontal" 
     'speed': 300 //0.3s transition 
}; 

希望這有助於。