Ng-lazyload-image: рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдХреНрд░реЙрд▓ рдЖрдпрдирд┐рдХ2

рдХреЛ рдирд┐рд░реНрдорд┐рдд 30 рдордИ 2017  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: tjoskar/ng-lazyload-image

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдХреНрд░реЙрд▓ рдкрд░ рдЫрд╡рд┐ рд▓реЛрдб рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

            <ion-scroll scrollX="true" #lazyContainer>
                <!--<img class="thumbnail-avatar" *ngFor="let item of items" src="http://placehold.it/350x150">-->
                <img class="thumbnail-avatar-square spacer" *ngFor="let item of recent"
                     (click)="tapped(item)"
                     [scrollObservable]="lazyContainer.ionScroll"
                     [lazyLoad]="item.avatar">
            </ion-scroll>

image

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХрд╛рдо рдХрд░ рдЧрдпрд╛ред рдХреБрдВрдЬреА рд╕реНрдХреНрд░реЙрд▓ рд▓рдХреНрд╖реНрдп рдХреЛ scroll._scrollContent.nativeElement рдкрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реИ

рдиреАрдЪреЗ рдкреВрд░рд╛ рдХреЛрдб

`` javascript <ion-scroll scrollX="true" direction="x" #scroll1> <div class="item" margin *ngFor="let item of newItems" (click)="goToItemPage(item)"> <img src="./assets/imgs/placeholder.png" [lazyLoad]="item.photoThumb?.url()" [scrollTarget]="scroll1._scrollContent.nativeElement" /> <div text-center text-wrap> <p no-margin>{{ (item.shortName || item.name) | excerpt:17 }}</p> </div> </div> </ion-scroll>

рд╕рднреА 7 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдирдорд╕реНрддреЗ,

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдХрд╛рд░рдг рд╕реЗ рд▓рдВрдмрд╡рдд рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддреЗ рд╕рдордп lazyContainer.ionScroll рдХреЗрд╡рд▓ рдИрд╡реЗрдВрдЯ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП ionScroll рдХреЗ рдореВрд▓реНрдп рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддреЗ рд╕рдордп рдпрд╣ рдХреЛрдИ рдорд╛рди рдЙрддреНрд╕рд░реНрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред

<ion-scroll scrollX="true" #lazyContainer>
  <img class="thumbnail-avatar-square spacer" *ngFor="let item of recent"
    (click)="tapped(item)"
    [scrollObservable]="lazyContainer.ionScroll"
    [lazyLoad]="item.avatar">
  {{ lazyContainer.ionScroll | async | json }}
</ion-scroll>

@kodeine рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рдорд╣рд╕реВрд╕ рдХрд░реЗрдВ рдпрджрд┐ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рд╣реЛрддреА рд╣реИ

рдирдорд╕реНрддреЗ,

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ... @tjoskar рдмрдзрд╛рдИред рдпрд╣ рдЖрдпреЛрдирд┐рдХ 3.9.2 рдкрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдпрди-рд╕реНрдХреНрд░реЙрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрднреА async/json рдкрд╛рдЗрдк рдХреЗ рд╕рд╛рде ionScroll рдХреЗ рдорд╛рди рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдЕрд╢рдХреНрдд рд▓реМрдЯ рд░рд╣рд╛ рд╣реИред рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЗрд╕ рдЖрдпрдирд┐рдХ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдзрд╛рди?

рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ: рдореИрдВрдиреЗ рдПрдХ рдХрд╛рдордХрд╛рдЬреА рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдЖрдпрдирд╕реНрдХреНрд░реЙрд▓ рднреА рд╢реВрдиреНрдп рд▓реМрдЯ рд░рд╣рд╛ рд╣реИ?

рдХрд╛рдо рдХрд░ рдЧрдпрд╛ред рдХреБрдВрдЬреА рд╕реНрдХреНрд░реЙрд▓ рд▓рдХреНрд╖реНрдп рдХреЛ scroll._scrollContent.nativeElement рдкрд░ рд╕реЗрдЯ рдХрд░рдирд╛ рд╣реИ

рдиреАрдЪреЗ рдкреВрд░рд╛ рдХреЛрдб

`` javascript <ion-scroll scrollX="true" direction="x" #scroll1> <div class="item" margin *ngFor="let item of newItems" (click)="goToItemPage(item)"> <img src="./assets/imgs/placeholder.png" [lazyLoad]="item.photoThumb?.url()" [scrollTarget]="scroll1._scrollContent.nativeElement" /> <div text-center text-wrap> <p no-margin>{{ (item.shortName || item.name) | excerpt:17 }}</p> </div> </div> </ion-scroll>

рд╣рд╛рдп @fmendoza рдореЗрд░реЗ рдкрд╛рд╕ рдХрдИ рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд╣рд╛рдБ рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдФрд░ рдЖрд▓рд╕реА рд▓реЛрдб рдЪрд┐рддреНрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рд╣рд╛рд▓рд╛рдБрдХрд┐ рдХреЗрд╡рд▓ рджреГрд╢реНрдпрдорд╛рди рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдкрд╣рд▓реЗ рд▓реЛрдб рдкрд░ рдЪрд┐рддреНрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИрдВред
рдЕрдиреНрдп рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдВрдмрд╡рдд рд╕реНрдХреНрд░реЙрд▓ рдХрд░рдирд╛ рдЫрд╡рд┐ рд▓реЛрдб рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рдЕрдкрдиреА рдЖрдпрди-рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рдВрдмрд╡рдд рд╕реНрдХреНрд░реЙрд▓ рдФрд░ рдореЗрд░реЗ рдЖрдпрди-рд╕реНрдХреНрд░реЙрд▓ рдХреЗ рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдХреНрд░реЙрд▓ рдкрд░ рдЗрди рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд▓реЛрдб рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ
рдЬреИрд╕реЗ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рджреЛ рд╕реНрдХреНрд░реЙрд▓ рд▓рдХреНрд╖реНрдп рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдПрдХ рдЖрдпрди-рд╕реНрдХреНрд░реЙрд▓ рдХреЗ рд▓рд┐рдП рдФрд░ рджреВрд╕рд░рд╛ рдЖрдпрди-рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП
рдХреГрдкрдпрд╛ рд╕рд╣рд╛рдпрддрд╛ рдХреАрдЬрд┐рдпреЗ

рдореИрдВрдиреЗ рдореБрдЦреНрдп рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╡рд░реНрдЯрд┐рдХрд▓ рд╕реНрдХреНрд░реЙрд▓ рдХреЗ рд╡реНрдпреВрдкреЛрд░реНрдЯ рдХреЗ рдмрд╛рд╣рд░ рдХреНрд╖реИрддрд┐рдЬ рд░реВрдк рд╕реЗ рд╕реНрдХреНрд░реЙрд▓ рдХреА рдЧрдИ рд╕реВрдЪреА рд╣реЛрдиреЗ рдХреЗ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рд╣реИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред
рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╕реВрдЪреА рдХреЗ рдкрд╣рд▓реЗ 2 рдЖрдЗрдЯрдо рд╣рдореЗрд╢рд╛ рдореБрдЦреНрдп рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рдВрдмрд╡рдд рд╕реНрдХреНрд░реЙрд▓ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЙрдирдХреЗ рд╕реНрдХреНрд░реЙрд▓ рдХрдВрдЯреЗрдирд░ рдХреЛ <ion-content #content> рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВред рдФрд░ рдмрд╛рдХреА рд╕реВрдЪреА рдЖрдЗрдЯрдо рдХреНрд╖реИрддрд┐рдЬ рд╕реНрдХреНрд░реЙрд▓ рдХреЗ <ion-scroll scrollX="true" #recentScroll> ред

<ion-content #content>
        <!-- more ion-scrolls here -->
    <ion-scroll #recentScroll scrollX="true">
        <ng-container *ngFor="let subitem of recentItems; let i = index">
            <horizontal-item [item]="subitem" 
                                [scrollContainer]="content._scrollContent.nativeElement" 
                                (openItem)="showItemDetails($event, true)"
                    *ngIf="i < 2"></horizontal-item>
            <horizontal-item [item]="subitem" 
                                [scrollContainer]="recentScroll._scrollContent.nativeElement"
                                (openItem)="showItemDetails($event, true)"
                   *ngIf="i >= 2"></horizontal-item>
        </ng-container>
    </ion-scroll>
        <!-- more ion-scrolls here -->
</ion-content>
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

audacitus picture audacitus  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

sandeepdussa picture sandeepdussa  ┬╖  9рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

coryrylan picture coryrylan  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lares83 picture lares83  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

rimlin picture rimlin  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ