2017-06-29 58 views
0

我要檢查如何檢查對象在打字稿中有一些屬性/對象?

if (!window.MSStream) ... 

,但我在打字稿得到錯誤,智能感知強調MSStream對象,因爲它未聲明 - 而這正是我的觀點來檢查 - 但我不能在Angular2構建的應用程序,因爲那個錯誤。 我怎麼能「騙」打字稿或迫使他不要那麼嚴格,像常規的JavaScript,只是做檢查,並留下我一個人......

回答

2

MSStream並沒有提供window類型定義的一部分。 您可以自行添加此類型,也可以通過方括號訪問此屬性。然後打字稿編譯器應該沒問題。

if (!window['MSStream']) { /* do something */ } 
+0

你是對的,它的工作!雖然我確信我之前嘗試過......顯然我沒有:) – Dalibor

+0

我知道你的意思。 :-) 有時我碰到相同的問題。 ;-) 快樂編碼! –