早期的 JavaScript 脚本主要用于开发一些简单的表单和网页的交互功能, 那个年代的前端工程师数量也极少, 通过 window 来实现模块化并没有什么太大的问题....但前端技术和互联网发展的速度远超我们的想象, 随着网页越来越像一个真实的客户端, 这对前端的工程能力提出了极大的挑战, 仅靠单纯的脚本开发已经难以满足项目的需要, 于是 gulp 等用于前端工程管理的脚手架开始进入我们的视野...不过这些努力依然没有超越先行模块化机制中的核心命题, 即模块必须先加载, 后调用执行.
只要这个核心命题不变, 模块的依赖问题依然是无解的....在我们的设想中, 一种新的模块加载方式是这样的
// remoteModule.js 这是一个发布到 cdn 的远程模块, 内部代码是这样
widnow.rdeco.create({
name...)
})
复制代码
然后我们在 html 中先加载 localModule.js 后加载 remoteModule.js