ES6: Promise函数

2016-09-04  本文已影响109人  打不过就加入他
var promise = new Promise(function(resolve,reject){
  $.ajax({
    success: function(data){
        resolve(data)
    },
   error: function(err){
       reject(err)
  }
  })})

使用

promise.then(function(data){
dosomething(data)
},function(err){
do something(err)
})
function getFn(url){
  return new Promise(function(resolve,reject){
    $.ajax({
        url: url,
        success: function(data){
          resolve(data);
      },
        error: function(err){
          reject(err)
      }
    })
})
}
//使用
getFn(url).then(function(data){
  return getFn(url2)
}).then(function(url3){
})

** 在平时的开发中,我们可能碰到这种情况,需要多个接口的返回的数据拼装在一起渲染页面之后再执行相应的事件,这时,Promise.all就派上用场了**

var p1 = new Promise(function(resolve){resolve(111)});
var p2 = new Promise(function(resolve){resolve(222)});
var p3 = new Promise(function(resolve){resolve(333)});
Promise.all([p1,p2,p3]).then(data)
//[111,222,333]

日后会补上自己对co模块的使用和理解,这一块内容准备放在koa内容里写

上一篇下一篇

猜你喜欢

热点阅读