猿问

如何用Promise来改写这段代码

今天学习了Promise,感觉听懂了但是要改写这段代码的时候还是有点摸不着头脑
大致觉得思路是利用Promise的resolve和reject来判断if和else??

请问这段代码如何改写呢。
用Promise


忽然笑
浏览 484回答 1
1回答

富国沪深

  $(function(){    var promise ;    $('#username').blur(function(){        //当用户名表单失去焦点的时候,应该将用户名信息发送给服务器        //让服务器去检测用户名是否被占用        var content = $('#username').val();        if(content !== ''){            promise = $.ajax({                method:'GET',                url:'/checkUsername',                data:{                    username:content                }            }).then(function(data){                if(data.message){                    //有占用                    $('#check').html('用户名被占用了');                    throw '用户名被占用,请重新填写用户名';                }                //没占用                $('#check').html('√');                return data;            })        }else{            promise = Promise.reject('用户名不能为空');            $("#check").html('*');        }    })    $('#form').submit(function(e){        e.preventDefault();        promise && promise.then(function(data){            //这里处理提交的ajax操作            $.ajax({                method:'GET',                url:'/reg',                data:$('#form').serialize()            }).then(function(data){                if(data.message){                    alert(data.message);                }            })        }).catch(function(message) {            alert(message);        });    });})
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答