熟悉 es6Promise 的基本语法及 transition 动画
// promise 封装
let count = null;
// transitionend 监听 transition 动画执行结束
// box 元素绑定 transitionend 事件
box.addEventListener('transitionend',()=>{count();
})
// 盒子运动封装
let move=(x,y)=>{return new Promise((reslove,reject)=>{box.style.transform =`translate(${x}px,${y}px)`;
count = reslove;
})
}
// run 函数触发
let run=()=>{// move(200,0).then(()=>{// move(200,200).then(()=>{// move(0,0).then(()=>{// move(0,200)
// })
// })
// })
// Promise 链式调用
move(200,0).then(()=>{return move(200,200)
}).then(()=>{return move(0,0)
}).then(()=>{return move(0,200)
})
}
- 方便代码的组织 代码看起来更加美观简洁
- 避免回调地狱