Angularjs 在调整页面大小之前不显示图像的离子幻灯片框
我遇到了一个非常奇怪的问题。有一个离子幻灯片盒,其中包含一些图像:Angularjs 在调整页面大小之前不显示图像的离子幻灯片框,angularjs,ionic-framework,Angularjs,Ionic Framework,我遇到了一个非常奇怪的问题。有一个离子幻灯片盒,其中包含一些图像: <ion-view > <ion-content overflow-scroll="false" > <ion-slide-box show-pager="true"> <ion-slide ng-repeat="item in featured"> <img class="featured-image" ng-src=
<ion-view >
<ion-content overflow-scroll="false" >
<ion-slide-box show-pager="true">
<ion-slide ng-repeat="item in featured">
<img class="featured-image" ng-src="{{item.thumbnail}}" alt="" />
</ion-slide>
</ion-slide-box>
</ion-content>
</ion-view>
有什么想法吗?谢谢我通过更改控制器代码解决了此问题:
function loadFeatured() {
MySvc.getFeatured(function(success, data) {
if ( success ) {
$scope.featured = data;
setTimeout(function() {
$ionicSlideBoxDelegate.slide(0);
$ionicSlideBoxDelegate.update();
$scope.$apply();
});
} else {
alert(error.message);
}
});
}
我通过更改控制器代码解决了此问题:
function loadFeatured() {
MySvc.getFeatured(function(success, data) {
if ( success ) {
$scope.featured = data;
setTimeout(function() {
$ionicSlideBoxDelegate.slide(0);
$ionicSlideBoxDelegate.update();
$scope.$apply();
});
} else {
alert(error.message);
}
});
}
您应该使用angularjs的超时:
$timeout(function(){$ionicSlideBoxDelegate.slide(0);$ionicSlideBoxDelegate.update();})
setTimeout和$timeout有什么区别?$timeout
已经为您执行了$scope.apply()
,因此您不必显式调用它。谷歌自己获取更多信息;-)您应该使用angularjs的超时:$timeout(function(){$ionicSlideBoxDelegate.slide(0);$ionicSlideBoxDelegate.update();})
setTimeout和$timeout有什么区别?$timeout
已经为您执行了$scope.apply()
,因此您不必显式调用它。谷歌自己获取更多信息;-)