2017-07-28 88 views
-1

當我關閉Google API時,我得到一個「Uncaught TypeError:無法讀取未定義」消息的屬性「DataTable」。如何捕獲未捕獲的typeerror:無法讀取未定義的屬性'datatable'。錯誤

我想抓住這個未定義的錯誤,並有一個窗口彈出「谷歌已被禁用」,但我不知道什麼類型的對象是未定義的。我目前正在檢查「DataTable」對象,但我很確定這是錯誤的,因爲無論現在窗口彈出。

這是我的代碼。的

var data = new google.visualization.DataTable(); 
if(typeof DataTable == "undefined"){ 
window.alert("sometext"); 
} else { 
data.addColumn('string', 'Name'); 
data.addColumn('string', 'Manager'); 
data.addColumn('string', 'ToolTip'); 
data.addColumn('string', 'Type'); 
data.addColumn('string', 'Code'); 
data.addColumn('string', 'Aggregation'); 
data.addColumn('string', 'Stage'); 

data.addRows([ 
<xsl:apply-templates select="/*" mode="render"/> 
['1','2','3','4','5','6','7'] 
]); 

data.removeRow(data.getNumberOfRows() - 1); 

drawDebugFlow(data); 
} 
+0

爲什麼要投票?我認爲這是一個完全正確的問題。 – Dante

回答

1

代替:

if(typeof DataTable == "undefined"){ 

使用:

if(typeof google == "undefined" || typeof google.visualization == "undefined"){ 

錯誤是 「遺漏的類型錯誤:未定義無法讀取屬性 '數據表'」 不是 「的DataTable是不確定的」

+0

輝煌。這對我來說非常合適。非常感謝.. – Dante

相關問題