问题起因:需要在ajax异步添加操作之后弹框(Vue element弹框组件),但是一直报错this.$message is not a function,经过测试后排除环境问题,因为在ajax之前弹框正常,而且数据正常插入成功,那就是调用success方法的时候报错
有问题代码块:
$.ajax({
type: "POST",
url: "${pageContext.request.contextPath}/href/add_href" ,
data:{'src_1':this.input },
success : function() {
this.$message({
duration:1000,
showClose: true,
type: 'success',
message: '添加成功!'
});
},
error : function() {
vm.$message({
duration:1000,
showClose: true,
type: 'info',
message: '添加失败!'
});
}
});
报错信息:
修改结果:将传统的success修改为这样调用即可
$.ajax({
type: "POST",//方法类型
url: "${pageContext.request.contextPath}/href/add_href" ,
data:{'src_1':this.input },
// async: false,
success:((result) =>{
this.$message({
duration:1000,
showClose: true,
type: 'success',
message: '添加成功!'
});
}),
error:(() =>{
this.$message.error({
duration:1000,
showClose: true,
message: '服务器出错!'
});
}),
});
测试完毕,弹框成功!