20716


ons-carouselのons-carousel-itemをng-repeatを使って作成しているのですが、  
initial-indexがどうも効いていないようで、1つ目のアイテムが表示されてしまいます。  
どうすればinitial-indexが反映されるようになるのでしょうか？

コードは以下のような感じです。  
前のページからファイルの情報や絞り込みのフィルタ等を含んだdataを渡しています。

[code]

    <ons-carousel fullscreen swipeable overscrollable auto-scroll var="carousel" initial-index="{{data.index}}">
        <ons-carousel-item ng-repeat="filedata in data.files | filter:data.filetype | filter:data.searchtext">
            <div class="center">{{filedata.filename}}</div>
            <img src="{{filedata.filepath}}" class="carouselimg" width="100%">
        </ons-carousel-item>
    </ons-carousel>
    
[/code]


CC BY-SA 3.0
2016-01-07T01:03:37.707
20684
2016-01-07T12:23:32.100
2016-01-07T06:02:37.293
12265
12265
question
onsen-ui angularjs
ons-carousel-itemをng-repeatで作成した場合にinitial-indexが効かない


おそらく`ons-carousel-item`で`ng-repeat`を使用しているので、`ons-carousel`で`initial-
index`を指定してもその時点では`ons-carousel-item`は一つも存在せず、反映されないのではないかと思われます。

コントローラを使用しているのであれば、`setActiveCarouselItemIndex`メソッドで指定できます。

[code]

    ons.ready(function() {
        carousel.setActiveCarouselItemIndex($scope.data.index);
    });
    
[/code]


CC BY-SA 3.0
2016-01-07T12:23:32.100
20716
2016-01-07T12:23:32.100
9566
20684
answer