[英]Angular-carousel is not always updated on slides change
我是AngularJS的新手,非常感謝您的建議。 我有帶有圖像的滑塊:
<ul rn-carousel rn-carousel-index="carouselIndex" rn-carousel-buffered>
<li ng-repeat="slide in slides track by slide.id" ng-class="'id-' + slide.id">
<div ng-style="{'background-image': 'url(' + slide.image + ')'}" class="bgimage">
</div>
</li>
</ul>
在我的控制器中,我分配給$scope.slides
一些圖像數組:
$scope.slides = [];
$.each(defaultImages,function(i, element)
{
var slide = {
image://...
};
$scope.slides.push(slide);
});
另外,我有一個更改幻燈片數組的函數:
$scope.colorClicked = function ($index, color_id) {
//...
$scope.slides = [];
$.each(images,function(i, element)
{
var slide = {
image:/...
};
$scope.slides.push(slide);
});
}
我有兩個問題:
1)它可以正常工作,但是當我的colorClicked
函數觸發時,有時當前顯示在滑塊上的圖像不會改變。
我想知道我應該以某種方式更新滑塊或范圍嗎? 我在函數中嘗試了$scope.$apply()
,但沒有幫助。
2)即使我將數組傳遞給slides集合,無論如何我都會在控制台中遇到錯誤: Error: the slides collection must be an Array
盡管我的滑塊工作正常,但Error: the slides collection must be an Array
。
解決方案錯誤“錯誤:幻燈片集合必須是錯誤數組(本機)angular-carousel.min.js:8”
//Controller
$scope.banners = [];
Banners.getListBanners().then(function (banners) {
$scope.banners = banners;
});
//view
<ul rn-carousel rn-carousel-auto-slide rn-carousel-transition="slide" ng-show="banners.length > 0">
<li ng-repeat="banner in banners">
<p ng-bind-html="banner.title | to_trusted"></p>
<img ng-if="isBlank(banner.link)" ng-src="{{banner.img}}" alt="{{banner.title | to_trusted}}">
<a ng-if="!isBlank(banner.link)" ng-click="openInExternalBrowser(banner.link, banner.type)" href="#">
<img ng-src="{{banner.img}}" alt="{{banner.title | to_trusted}}">
</a>
</li>
</ul>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.