在Vue 中呼叫資料出現屬性不存在的問題

2022-08-03 06:27:13 字數 1051 閱讀 9873

這已經是我在呼叫資料時趟過幾次的坑了,索性記錄下來防止後面再犯;

一般我們請求資料來渲染乙個頁面的時候,請求下來的資料基本上都是陣列或是物件,再通過列表迴圈和插值表示式渲染的頁面;在data 中提前宣告接收資料的變數時若為指定型別,就直接將資料渲染到頁面,在瀏覽器的控制台基本上都會出現 「某某屬性未定義」 的英文報錯;下面舉個例子:

先假設請求的是下面的json 資料:

,

// 。。。。。

]}

資料請求下來將data的學生分數選項 存到scoreinfo中,如下:

new vue(

}})

這裡為了說明問題,不用列表渲染,我們只取第一條資料中的name進行渲染,如果像這樣下面這樣寫的話,就會出現上面說的那種報錯:

...

}

這樣寫後,瀏覽器的控制台就會報錯,告訴name這個屬性未定義,究其原因是,我們一般請求資料,雖然在這個元件例項建立的時間就已經請求了,但是,請求資料,一般都是使用非同步的,在頁面渲染時最開始時,scoreinfo:僅僅是個空陣列,故會報name這個屬性確實不存在錯誤提示;

解決辦法:

new vue(]   // 在空陣列中加乙個空物件

}}})

當然我們平時請求的資料,不會這麼簡單,這裡在將要請求的數簡單修改一下:

"code": 0,

"data":[

},// 。。。。。

]}

此時需要將老師的名字渲染出來:

}
要想不報錯,還需要像如下修改一下scoreinfo:

new vue(}]

}}})

當然,還可以將資料改的更為複雜,但只需按照這個思路,就可以輕鬆的解決了

在vue中 中進行方法呼叫

您好,已實名認證 未實名認證 請 認證 歡迎來到上海科技,祝您使用愉快!編輯個人資訊 如需辦理業務,請依照以下步驟 實名認證提供您的身份資訊 立即認證 資料完善填寫您的個人履歷 立即填寫 關聯單位申請您的單位認證 業務辦理進行您的業務辦理 立即辦理 0 class grid content pd0 ...

nodeType屬性在vue原始碼中的使用

每個節點都有乙個 nodetype 屬性,用於表明節點的型別,節點型別由node型別中定義12個常量表示 nodetype在vue中的應用 在vue編譯的過程中需要查詢html結構中的雙大括號,或者 事件等代表vue中的資料及方法的屬性值,通過編譯將查詢到的部分使用vue例項中的屬性或方法替換 cl...

Vue 在頁面中呼叫其他頁面的方法

感覺這篇文章寫的很清楚簡單,分享一下!且這個方法很適合一些沒有直接關係的頁面之間的函式呼叫 需要在展示頁裡呼叫頂部導航欄頁裡的方法,兩者之間沒有引用關係,看了一下vue的api發現可以用這個方法實現。可以看到需要同乙個vue例項來呼叫兩個方法。所以可以建立乙個中轉站。首先在任意位置新建util.js...