代码大致如下,vue中使用 element-ui的组件 this.alert会报错误,因于与alert会报错误,因于与alert会报错误,因于与.ajax的回调函数中的this冲突,解决方法是将this.alert的this改为vue对象的名称vm.alert的this改为vue对象的名称 vm.alert的this改为vue对象的名称vm.alert,就可以正常提示了
let vm = new Vue({
el: '#app',
data: function () {
return {
machineIp: ''
}
},
methods: {
selectAllInstances: function () {
$.ajax({
type: "get",
url: url,
data:
{
ip: ip
},
success: function (result) {
this.$alert('请刷新页面重试!', '警告', {
confirmButtonText: '确定',
callback: action => {
window.location.reload();
}
});
}
});
}
}
});
这篇博客介绍了在Vue项目中使用Element-UI时,由于$.ajax回调函数内的this指向问题导致的this.$alert错误。解决方法是在$.ajax内部将this改为Vue实例的名称,例如vm.alert,从而正确调用组件并避免了上下文丢失的问题,实现了页面的正常提示。

4590

被折叠的 条评论
为什么被折叠?



