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>