2016-07-18 21 views
1

läuft Ich bin auf Angular ein Tutorial zu tun und die folgende Zeile die „Erwartung Newline oder Semikolon“ Störung zu erhalten:WebStorm meldet Fehler mit Code, der

<tr *ngFor='#product of products'> 

Der Code läuft gut, wie kann ich WebStorm den Fehler ignorieren? Hier ist der vollständige Text der Vorlage, die den Fehler hat:

<div class="panel panel-primary"> 
    <div class="page-header">{{pageTitle}}</div> 
    <div class="panel-body"> 
     <div class="row"> 
      <div class="col-md-2">Filter By:</div> 
      <div class="col-md-4"><input type="text"/> </div> 
     </div> 
    <div class="row"> 
     <div class="col-md-6"><h3>Filtered by:</h3></div> 
    </div> 
    </div> 
<div class="table-responsive"> 
    <table class="table" *ngIf="products && products.length"> 
     <thead> 
     <tr> 
      <th><button class="btn btn-primary">Show Image</button> </th> 
      <th>Product</th> 
      <th>Code</th> 
      <th>Available</th> 
      <th>Price</th> 
      <th>Rating</th> 
     </tr> 
     </thead> 
     <tbody> 
     <tr *ngFor='#product of products'> 
      <td></td> 
      <td>{{product.productName}}</td> 
      <td>{{product.productCode}}</td> 
      <td>{{product.releaseDate}}</td> 
      <td>{{product.price}}</td> 
      <td>{{product.starRating}}</td> 
     </tr> 
     </tbody> 
    </table> 
</div> 
</div> 
+0

Diese Frage wird in Kürze migriert. Bitte geben Sie einen Link zum Tutorial an. –

+0

Es ist das Deborah Kurata (https://app.pluralalsight.com/library/courses/angular-2-getting-started/table-of-contents) Plural-Tutorial. Aus irgendeinem Grund hat jemand die Frage bearbeitet, um den "tr" -Teil des Tags zu entfernen. So sollte es safetyOtter

+0

Auch das ist nicht wirklich eine Frage über das Tutorial, Es ist webstorm Fehler zu überprüfen, einen falschen positiven bekommen. – safetyOtter

Antwort

2

Ich hatte den gleichen Fehler und Neustart nicht geholfen. Stellt sich heraus, dass dies eine alte Syntax ist. Ab Angular 2 beta.17 wird die Syntax von

geändert
<tr *ngFor='#product of products'> 

zu

<tr *ngFor='let product of products'> 

In meinem Fall PhpStorm 2016.03.02 wurde diese neue Syntax zu erkennen, aber mein Code mit der alten Syntax wurde kompilieren, weil Es wurde eingerichtet, Angular 2 beta.13 zu verwenden.

Um es in meinem Projekt zu beheben, änderte ich die Syntax wie oben, und dann in package.json änderte ich

"dependencies": { 
    "angular2": "2.0.0-beta.13", 
    "rxjs": "5.0.0-beta.2", 
    "zone.js": "0.6.6" 
}, 

zu

"dependencies": { 
    "angular2": "2.0.0-beta.17", 
    "rxjs": "5.0.0-beta.6", 
    "zone.js": "0.6.12" 
}, 

und lief npm update. Für mich hat das alles gut funktioniert.

Weitere Details finden Sie unter https://johnpapa.net/angular-2-ngfor/.

0

Gerade WebStorm neu starten musste und der Fehler ging weg. Ich bin auf ein paar andere ähnliche Fehler gestoßen, bei denen die gleiche Lösung behoben wurde. Ich werde traurig darüber sein, die 50 Dollar auszugeben und vorerst sublime zu benutzen.