Chyba stále trvám
Nedá sa viazať na "ngIfElse", pretože to nie je známa vlastnosť "ul".
Som si istý, že niekde robím hlúpu chybu, ale nedokážem ju nájsť.
<ul *ngIf="!finished; else elseBlock" id="time">
<li id="hour" class="chart" data-percent="100"><span>{{hour}} </span></li>
<li id="min" class="chart" data-percent="100"><span>{{minute}}</span></li>
<li id="second" class="chart" data-percent="100"><span>{{second}}</span></li>
</ul>
<ng-template #elseBlock> <h4 id="time">DONE</h4> </ng-template>
odpovede:
5 pre odpoveď č. 1Uhlová 2 nepodporuje Esle, máte 2 možnosti:
1: použitím pozitívneho prípadu:
<ul *ngIf="!finished" id="time">
<li id="hour" class="chart" data-percent="100"><span>{{hour}} </span></li>
<li id="min" class="chart" data-percent="100"><span>{{minute}}</span></li>
<li id="second" class="chart" data-percent="100"><span>{{second}}</span</li>
</ul>
<h4 id="time" *ngIf="finished"> <!-- this -->
DONE
</h4>
2: aktualizujte svoju aplikáciu na Angular 4:
V systéme Linux / Mac:
npm install @angular/{common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router,animations}@latest typescript@latest --save
Vo Windows:
npm install @angular/common@latest @angular/compiler@latest @angular/compiler-cli@latest @angular/core@latest @angular/forms@latest @angular/http@latest @angular/platform-browser@latest @angular/platform-browser-dynamic@latest @angular/platform-server@latest @angular/router@latest @angular/animations@latest typescript@latest --save
Ak sa spoliehate na animácie, importujte novéBrowserAnimationsModule from @ angular / platform-browser / animations vo vašom root NgModule. bez tento kód sa skompiluje a spustí, ale animácie spustia chyba. Dovozy z @ angular / core boli zastarané, používajú sa dovozy z import nového balíka {trigger, state, style, transition, animate} z „@ angular / animations“ ;.
http://angularjs.blogspot.com/2017/03/angular-400-now-available.html
2 pre odpoveď č. 2
Na ng-if
smernica sa zaoberá iba pozitívnym prípadom. Pre negatívny prípad ( else
) použite samostatný blok:
<ul ng-if="!finished" id="time">
<li id="hour" class="chart" data-percent="100"><span>{{hour}} </span></li>
<li id="min" class="chart" data-percent="100"><span>{{minute}}</span></li>
<li id="second" class="chart" data-percent="100"><span>{{second}}</span></li>
</ul>
<ng-if="finished">
<h4 id="time">DONE</h4>
</ng-template>