微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Vue中ajax返回的结果赋值

这是第二次在项目中遇到此问题,ajax请求成功后在success函数中为Vue实例data里的变量赋值,却失败了

new Vue({
    el:'#app',data:{
        msg:''
    },created:function(){
        $.ajax({
            url:'',data:'',dataType:'json',success:function(res){
                this.msg = res.data;
            }   
        })
    }
})

原因在于在ajax的success函数中,this的指向不再是vue的实例
解决办法可以先把this保存起来

new Vue({
    el:'#app',created:function(){
        var that = this;
        $.ajax({
            url:'',success:function(res){
                that.msg = res.data;
            }   
        })
    }
})

参考资料

Vue中ajax赋值问题

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐