国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

Vue 報(bào)錯(cuò)TypeError: this.$set is not a function 的解決方法

2019-11-19 12:20:15
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

報(bào)錯(cuò)場(chǎng)景:將APi中得到的response數(shù)據(jù),用Vue$set()使數(shù)據(jù)動(dòng)態(tài)響應(yīng)

報(bào)錯(cuò)代碼:

 methods: {  textTranslate: function (text, to) {    $.ajax({    url: 'http://openapi.youdao.com/api',    type: 'post',    dataType: 'jsonp',    data: {     q: text,     appKey: this.appKey,     salt: this.salt,     from: this.from,     to: to,     sign: md5(this.appKey + text + this.salt + this.key)    },    success: function (data) {     this.$set(this.$data, 'translatedText', data.translation[0])    }   })  } }

報(bào)錯(cuò)原因:這里的this指向的不是VueModel,

解決方法1:在執(zhí)行函數(shù)中定義指向Model的變量 let vm = this ,用該變量替代this

 methods: {  textTranslate: function (text, to) {   let vm = this   $.ajax({    url: 'http://openapi.youdao.com/api',    type: 'post',    dataType: 'jsonp',    data: {     q: text,     appKey: this.appKey,     salt: this.salt,     from: this.from,     to: to,     sign: md5(this.appKey + text + this.salt + this.key)    },    success: function (data) {     vm.$set(vm.$data, 'translatedText', data.translation[0])    }   })  } }

解決方法2:將。siccess改為箭頭函數(shù)的寫法,這樣子箭頭函數(shù)里的this其實(shí)是指向VueModel的,這樣子用this看不會(huì)報(bào)錯(cuò)了

success: (data) => {     this.$set(this.$data, 'translatedText', data.translation[0])    }

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 额尔古纳市| 万宁市| 志丹县| 铜山县| 花垣县| 浦县| 丰都县| 西华县| 颍上县| 扬州市| 山阴县| 化州市| 枣强县| 邵阳市| 酒泉市| 嘉定区| 新晃| 凤台县| 连云港市| 克拉玛依市| 屏边| 高雄市| 海南省| 泸州市| 思南县| 蕉岭县| 财经| 通江县| 伊春市| 清原| 株洲县| 富蕴县| 含山县| 普宁市| 泗阳县| 南丰县| 沂水县| 永仁县| 阿勒泰市| 炉霍县| 肃宁县|