91无码高清视频在线播放|亚洲最大成人在线资源|日本黄色免费调教网站|亚洲春色一区二区三区|国产一级一区二区三区|成人免费 做受电影无码

歡迎訪問漢海網(wǎng),帶你進入知識的海洋!

undefined怎么解除(undefined解決辦法)

方應 分享 時間: 瀏覽:0

當vue與axios直接在html文件中使用的時候,位于axios的請求中的this指向并不是指向vue,而是指向window,如果在請求中直接用this獲取data中的數(shù)據(jù)會出現(xiàn)undefined的問題,解決思路是將ES5的函數(shù)語法更換為箭頭函數(shù)即可解決此問題,深層的原因就得深入去了解箭頭函數(shù)和普通函數(shù)之間的區(qū)別了!

案例:

new Vue({el: '#app',data:{carousels: [],     },    created() {      axios.get('/api/banners/').then(function (response) {         // 這里的this.carousels是undefined,因此上下邊的賦值是不起作用的           this.carousels = res.data       }).catch(function (error) {           console.log(err)       });     }, })

以上案例可以發(fā)現(xiàn)在axios中使用this獲取data中的值是獲取不到的,這就是this的指向問題造成的,他不是指向vue,只需要修改如下,將function函數(shù)改為箭頭函數(shù)即可解決!

修改代碼如下:

new Vue({el: '#app',data:{carousels: [],     },    created() {      axios.get('/api/banners/').then(res => {           this.carousels = res.data       }).catch(err => {           console.log(err)       });     }, })

到此問題就解決了!

本站部分文章來自網(wǎng)絡或用戶投稿。涉及到的言論觀點不代表本站立場。閱讀前請查看【免責聲明】發(fā)布者:方應,如若本篇文章侵犯了原著者的合法權益,可聯(lián)系我們進行處理。本文鏈接:http://www.gdyuanyu.cn/tougao/73309.html

221381