2016-11-18 85 views
0

我從外部來源(Java ee服務器上的qrcode)創建圖像。當我的Angular2應用程序更新圖像的數據時,服務器上的所有內容都會更新,但不會在角度應用程序中刷新生成的圖像。我目前正在做一個zone.run,但它似乎沒有刷新圖像,如果整個頁面刷新(如果我放置一個location.reload),一切都很好。任何人都沒有如何從外部來源正確刷新圖像?角度2圖像不刷新區域運行

模板都有這樣的:

 <img [src]=url /> 

組件具有這樣的:

 this.zone.run(()=>{ 
      this.url = QRURL + this.selectedProduct.id; 
     }); 

QRURL是包含服務器的URL,執行圖像的生成常數。

+0

你不需要自己運行區域。它可能是一個緩存問題,或者是一些關於語法的問題(''應該是'',請給'this.zone.run'提供一些代碼,我們需要更多的上下文 – Maxime

+0

如果是緩存問題,請嘗試更改你的網址爲:'this.url = QRURL + this.selectedProduct.id +'?'+ new Date()。getTime();'這樣,你的瀏覽器就不會碰到某個緩存(因爲時間戳)。 – Maxime

回答

0

引號並沒有解決它,但馬克西姆的第二評論。我不斷的讀取y有一個查詢字符串,所以我只是添加日期的東西作爲它的另一個參數,這就做了訣竅,我能夠剝離zone.run。最終的變量如下所示:

 this.url = QRURL + this.selectedProduct.id + '&date=' + new Date().getTime(); 

謝謝!