新しいAngularのngSrcに相当するものは何ですか?


92

JSONオブジェクトからのsrcでimgを実装したいと思います。

AngularJSでは、私は次のことができました:

<img ng-src="{{hash}}" alt="Description" />

Angular 2+にはこれに相当するものはありますか?

回答:


179

AngularJS:

<img ng-src="{{movie.imageurl}}">

Angular 2+:

<img [src]="movie.imageurl">

Angular docs


補間でも同じ結果が得られることに注意してください。

<img src="{{vehicle.imageUrl}}">

<img [src]="vehicle.imageUrl">

双方向バインディングを望まない限り、プロパティバインディングのこれら2つのステートメントに技術的な違いはありません。

多くの場合、補間はプロパティバインディングの便利な代替手段です。実際、Angularはビューをレンダリングする前に、これらの補間を対応するプロパティバインディングに変換します。 ソース


9
-SRC ngのが値を持ってする前に、NG-SRCにそれと同等ではないが、NG-SRCは、負荷のイメージを避けるために
セバスティアン・ロハス

セバスチャンが言ったように!のような要素video/audioや他のいくつかの要素にattributesは値がないはずがないため、等しくありません。ng-srcそれは同等ではありません[src]
Nikhilesh Shivarathri

8

これは、Angularアプリケーションでng-srcと同じ機能を実現するための2ステップのプロセスです。

最初の一歩:

HTMLで、新しい構文を使用します。

<img [src]="imageSrc">

第二段階:

コンポーネント/ディレクティブで、値を空に初期化します。例えば:

@Component({
  selector: 'ag-video',
  templateUrl: './video.component.html'
})
export class SampleComponent {
   imageSrc = '';
}

これでnull、要素に値が設定されていないため、ネットワーク呼び出し(空の呼び出し)がなくなります。



1
<tr *ngFor="let post of posts | paginate: { id: 'server', itemsPerPage: 
       10, currentPage: p , totalItems: count  }">

   <td>
    <img src="https://img.youtube.com/vi/{{post.youtubeVideoId}}/default.jpg">
   </td>

   <td>
     {{post.videoName}}
   </td>

</tr>

:それが失敗した要求を作成するため、これは推奨解決策ではないのでDownvoted img.youtube.com/vi {{post.youtubeVideoId}} / default.jpg。
ジェイミー

失敗したリクエストを作成します!同意した。
Nikhilesh Shivarathri、2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.