日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

vue 数据(data)赋值问题

發布時間:2025/5/22 vue 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue 数据(data)赋值问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

總結一下我遇到的一個糾結很久的問題。

在項目中需要用到后臺的數據對前端渲染,使用到了vue整合的axios,使用vue中的鉤子函數在頁面組件掛載完成之后向后臺發送一個get請求然后將返回后的數據賦值data()中定義的屬性:

執行后前端報錯:

原因:

在請求執行成功后執行回調函數中的內容,回調函數處于其它函數的內部this不會與任何對象綁定,為undefined。

解決方案:

一)將指向vue對象的this賦值給外部方法定義的屬性,然后在內部方法中使用該屬性

二)使用箭頭函數

原來 showActionSheet(theme, datas) {//取id 的值為this.idvar data = this.data;var info = eval('data.' + datas);//console.log(info);var button = {};for (let i in info) {button[info[i]] = function() {this.status = info[i];}}$actionSheet.show({theme: theme || '',title: '標題',buttons: button});//console.log(this.status); },

修改后

showActionSheet(datas) {//取id 的值為this.idvar data = this.data;var info = eval('data.' + datas);var button = {};for (let i in info) {button[info[i]] = ()=> {this[datas] = info[i]; //datas是一個變量,,比如 datas=s代替的是this.s=info[i];}}$actionSheet.show({theme: 'android',title: '標題',buttons: button}); },

總結

以上是生活随笔為你收集整理的vue 数据(data)赋值问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。