1

Angular でチュートリアルを行っていますが、次の行で「改行またはセミコロンが必要です」というエラーが発生します。

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

コードは正常に実行されます。Webstorm にエラーを無視させるにはどうすればよいですか? エラーのあるテンプレートの全文は次のとおりです。

<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>
4

2 に答える 2

2

同じエラーが発生し、再起動しても役に立ちませんでした。これは古い構文であることが判明しました。Angular 2 beta.17 の時点で、構文は次のように変更されています。

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

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

私の場合、PHPStorm 2016.3.2 はこの新しい構文を認識していましたが、Angular 2 beta.13 を使用するように設定されていたため、古い構文のコードはコンパイルされていました。

私のプロジェクトでそれを修正するために、上記のように構文を変更し、package.json で変更しました

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

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

そして走っnpm updateた。私にとっては、これですべてがうまく機能しました。

詳細については、 https://johnpapa.net/angular-2-ngfor/を参照してください。

于 2017-01-12T17:47:00.373 に答える
0

webstorm を再起動するだけで、エラーはなくなりました。同じ解決策で修正された他のいくつかの同様のエラーに遭遇しました。50ドルを使うのは悲しいので、今のところサブライムを使用してください.

于 2016-07-19T00:38:02.147 に答える