0

[更新] ここにあるAngular 2カルーセルで作業します:

https://embed.plnkr.co/ScE0uqfd0ZvL6T9j1XjL/

トランジション効果を追加したい。

carousel-example ts にプロパティを追加しました

<carousel [interval]="NextPhotoInterval" [noWrap]="noLoopSlides" [noTransition]="noTrans">

carousel-example.ts 内で非公開として宣言した noTrans プロパティ noTrans:boolean = false;

noTransition はカルーセルコンポーネント内にあります

 @Input() public noTransition:boolean;

(デフォルトでは noTrans は false であり、ドキュメントでは遷移を有効にする必要があります)。

これは何もしませんでした。遷移は見られません。誰かが私が間違っている場所を知っていますか?

ありがとう!

最後に、ブートストラップを使用して一般的なカルーセルを実装したので、誰かがそれを使用したい場合に役立つように、その方法を投稿します。

component.html:

   <div id="carousel-generic" class="carousel slide" data-ride="carousel" *ngIf="newsData">
            <ol class="carousel-indicators" [hidden]="newsData.length <=1">
                <li data-target="#carousel-generic" *ngFor="let news of newsData; let i= index" attr.data-slide-to="{{i}}" [ngClass]="{active: isActive(news)}"></li>
            </ol>
            <div class="carousel-inner news-loading" role="listbox">
                <div *ngFor="let news of newsData;" class="item" [ngClass]="{active: isActive(news)}">
                    <h4 class="center">{{news.Title}}</h4>
                    <img class="img-responsive" [src]="news.ImageUrl">
                    <div class="news">
                        <p><a target="_blank" href="{{news?.DetailsUrl}}">{{news.Text}}</a></p>
                    </div>
                </div>
                <a class="left carousel-control" href="#carousel-generic" role="button" data-slide="prev" [hidden]="!newsData.length">
                    <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
                    <span class="sr-only">Previous</span>
                </a>
                <a class="right carousel-control" href="#carousel-generic" role="button" data-slide="next" [hidden]="!newsData.length">
                    <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
                    <span class="sr-only">Next</span>
                </a>
            </div>
        </div>

component.ts:

@Component({
    selector: 'my-component',
    templateUrl: 'app/components/component.html'
})

export class NewsComponent implements OnInit{
   private newsData: NewsDataModel[];

    constructor(private _service: MyService) {}

    private isActive(news:any){
       return news === this._service.newsData[0]; 
    }

   ngOnInit() {
    this.newsData = this._service.newsData;
  } 
}

*サービスでsubscribe()しました

4

0 に答える 0