当我触发该方法时,我得到了我想要的字符串但不确定为什么它没有保存在数据对象上。任何帮助将不胜感激。感谢
new Vue({
el: '#app',
data: {
output: '' // <- var test (string)
},
methods: {
searchProperty: function () {
$.get(baseUrl, function(res) {
var test = $(res).find('#label_bin_output').text();
this.output = test;
});
}
}
});
更新:忘了提到我使用jQuery进行ajax请求。
答案 0 :(得分:2)
new Vue({
el: '#app',
data: {
output: '' // <- var test (string)
},
methods: {
searchProperty: function () {
var self = this;
^^^^^^^^^^^^^^^^
$.get(baseUrl, function(res) {
var test = $(res).find('#label_bin_output').text();
self.output = test;
^^^^
});
}
}
});
答案 1 :(得分:1)
问题是&#34; this.output&#34;在Jquery的范围内; (这= = jquery)。
你需要引用主要的obj:
new Vue({
el: '#app',
data: {
output: '' // <- var test (string)
},
methods: {
searchProperty: function () {
var _self = this; // ref to main...
$.get(baseUrl, function(res) {
// try console.log this and _self
console.log(_self);
console.log(this);
var test = $(res).find('#label_bin_output').text();
_self.output = test;
});
}
}
});