簡體   English   中英

錯誤:未處理的拒絕(類型錯誤):無法讀取未定義的屬性“地圖”不確定我錯過了什么

[英]Error: Unhandled Rejection (TypeError): Cannot read property 'map' of undefined not sure what I'm missing

我是 React 和 JavaScript 的新手,我正在嘗試進行 API 調用以返回狀態列表。 我的 API 調用工作正常,當我控制台注銷陣列時,數據就在那里。 這個問題是映射。 當我調用地圖時,出現錯誤:

未處理的拒絕(類型錯誤):無法讀取未定義的屬性“地圖”

代碼:

export class StatesDropDown extends Component {
     static displayName = StatesDropDown.name;

    constructor(props) {
        super(props);
        this.state = {
           // isLoaded: false,
            StateList: [],
        };
    }




    componentDidMount() {
        let initialStateList = [];
        fetch('api/States/Index')
            .then(response => {
                return response.json();
            }).then(data => {
                console.log("Data",data);
                
                initialStateList = data.results.map((state1) => {
                    return state1                  
                });
                console.log(initialStateList);
                this.setState({
                   StateList: initialStateList
                });
            });
    }


經過研究,聽起來像是在調用它時它是未定義的,因此是錯誤的,但我很困惑為什么它是未定義的以及為什么它會拋出此錯誤。 任何幫助,將不勝感激。

你打電話時

data.results.map()

我們可以理解這個數據有如下結構

data: { 
   result: [] 
}

正如您的錯誤所說,未定義中不存在函數映射(在您的情況下,這意味着結果具有未定義的值)。

您應該確認數據是一個始終具有“結果”鍵的對象。 否則,您應該處理這些情況。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM