2017-04-03 57 views
0

我有一個角色特徵,我正在處理,並且不斷收到typerror。無論我使用哪個屬性,不管使用哪個屬性,不管使用哪個屬性,都可以使用tybelrors

TypeError: Cannot read property 'push' of undefined

該功能顯示來自json的用戶列表,並以彩色圓圈顯示其首字母縮寫。完全像微軟和Android一樣。雖然這可行,但它會拋出無法讀取屬性.match的Typerror,但它可以完成這項工作:/

當您單擊添加按鈕時,會出現一個對話框,用於將新聯繫人添加到列表中。這部分不起作用,恐怕typerror.push可能是罪魁禍首。

我有一個顯示錯誤的Plunker。

錯誤是指這條線

function addNewContact() 
{ 
    $scope.contacts.push($scope.contact); 

    closeDialog(); 
} 

你可以看到它在PLUNKR

感謝事先運行

+0

顯然'contacts'不是您所期望的數組。它從哪裏來?它沒有被正確設置 – Pabs123

+0

它在contacts.json中 – LOTUSMS

+0

在addNewContact函數'console.log($ scope)'中放置一個日誌,表明在它內部沒有稱爲聯繫人的數組。我相信你在設置「聯繫人」的地方有一個範圍問題。 – Pabs123

回答

1

$mdDialog控制器DialogController有不同的範圍,並正在從不同的參考contacts範圍(myctrl)。但是,您已經將其作爲Contacts從屬關係通過。因此,您可以直接將數據推送至Contacts,該數據已引用您的$scope.contacts

... 
function addNewContact() 
{ 
    Contacts.push($scope.contact); 
    closeDialog(); 
} 
... 
+0

genious!非常感謝! – LOTUSMS

相關問題