2017-03-13 37 views
0

我需要幫助。我怎樣才能避免由於未定義而導致錯誤?我試圖檢查,但我想我的方法不起作用。 enter image description here如何避免因爲React-Native中的undefined而導致錯誤

enter image description here

+0

'this.props.adres'顯然是沒有定義。你需要確保它存在,然後再嘗試對其屬性執行某些操作(這也不存在) – Pabs123

+0

「_如何避免因undefined_而導致錯誤」停止對不存在的對象調用函數。 – csmckelvey

+0

事情是,我從兩個單獨的頁面導航到此頁面。在第一頁中,我發送了對象'adres'。所以,當我從這個頁面來到這裏時,沒有問題。但是通過第二頁,我沒有傳遞任何參數或對象,所以當我從那裏來的時候會出現這個錯誤。這是問題,但我不知道如何解決這個問題@ Pabs123 –

回答

0

,如果你知道一個事實,adres是不存在的,當您從網頁中的一個定位,你應該檢查它的存在,而不是它的屬性的存在:

this.state = { 
    addressLine: this.props.adres? this.props.adres.address_line:null, 
    selectedBranchId: this.props.adres? this.props.adres.branch_address_id:null, 
} 

從你的解釋,這應該解決這個問題,雖然是完全安全的,我會做一個全面檢查每個像:

this.props.adres && this.props.adres.address_line 

而且不知道爲什麼你會拼寫它作爲adres而不是address

+0

謝謝:) 它向我展示了一種解決問題的方法:) 順便說一句,用我的母語「地址」寫成「adres」:D 祝您有美好的一天。 –

+0

沒問題!我認爲這是一種不同的語言,但只是因爲你也使用「address_line」 – Pabs123

1

我相信你可以使用你的defaultProps組件內部是這樣的:

static defaultProps: { 
    adres: { 
    addresLine: null, 
    selectedBranchID: null, 
    } 
} 
相關問題