Skip to main content

06 通过模块化、异步和观察做到动态加载

处理异步事件中的时间状态

在异步中,两个函数形成竞争条件(Race Condition)。

var userPromise = getUser(userId);
var ordersPromise = getOrders(userId);

userPromise.then(function onUser(user) {
ordersPromise.then(function onOrders(orders) {
user.orders = orders;
});
});

处理循环事件中的时间状态

处理用户事件中的时间状态

网页上的一个模块从加载到执行大致分成了 4 个步骤,加载、解析、编译、执行。

**可视时加载:**懒加载(Lazy loading),经常用在长页面当中。不需要一上来就加载整个页面,而是当用户滑动到了某个部分的时候,再加载相关的内容。

**交互时加载:**当用户和页面进行交互时,可能产生的加载。