2017-08-15 7 views
0

これは何よりもスタイルの質問のほうがいいと思いますが、これを正しく実行していることを確認したいと思います。Angular2 innerHtmlは常に更新します

私はエンドポイントを持っていますが、これは完全なjpegまたはpngの代わりにSVGイメージを返すことになり、そのページに表示する必要があります。私はSVGを呼び出して取得するサービスを作成しました。このサービスは、getImage(id)というコンポーネント内のメソッドから呼び出されます。私が気づい

<div [innerHtml]="getImage(id)></div> 

ことの一つは、それが絶えず更新していますので、私は本当にクロムでSVGを検査することができないということです。私のHTMLで

は、私のようなものを持っています。私はこれが問題なのかどうか、どうすればそれを解決するのか疑問に思っていますか?それはちょうど絶えず更新メソッドを呼び出すようですが、何も変更されていないので、変更の検出がトリガされるべきではありません。私のコメントのための

+0

'ngOnInit()'で画像を取得し、それを変数に設定してください。その変数を '[innerHtml]'で使用してください。 – Arg0n

+0

質問 - なぜsvgがimg要素のsrc属性にアタッチされていないのですか? – binDebug

答えて

1

例:

import { ..., OnInit, ... } from '@angular/core' 

@Component({ ... }) 
export class ...Component implements OnInit { 
    private image: string; 

    constructor(...) { ... } 

    public ngOnInit(): void { 
     this.getImage(1); //Get id from somewhere 
    } 

    private getImage(id): void { 
     ... 
     this.image = ...; 
    } 
} 

HTML

<div [innerHtml]="image"></div> 
関連する問題