promise 简单使用

Source
Output
QRCode
<!doctype html> <html> <head> <meta charset="utf-8"/> <title>promise简单使用</title> <link rel="stylesheet" type="text/css" href="assets/bootstrap.css"> <script src="//g.alicdn.com/kissy/k/5.0.1/seed.js"></script> </head> <body> <h4>promise适用于有异步逻辑的场景,能减少回调函数的嵌套,让代码更加优雅,可读性提高等</h4> <p>查看代码,点击下面按钮观察结果</p> <button id="demo1" class="btn btn-default btn-sm">点我执行</button> <script type="text/javascript"> require(['node', 'promise'], function(Node, Promise){ var $ = Node.all; $('#demo1').on('click', function(ev){ var defer1 = new Promise.Defer(), promise1 = defer1.promise; //监听这个promise的成功或失败 promise1.then(function(promisedValue){ alert(promisedValue); },function(reason){ alert(reason); }); setTimeout(function(){ //just do something async defer1.resolve('Let it success!'); //当想要让这个promise响应状态时调用相应的方法 },1000); }); }) </script> </body> </html>