初识异步加载require与AMD模式
写过php的人对于require函数都不陌生,它的作用为文件导入,也可以把文件理解为模块、导入理解为调用,称为模块调用 随着用户体验的极致追求,前端业务所占比重逐渐增加,于是出现了前端领域的模块化编程 但是模块加载(javascript文件加载)的先后顺序却给我们带来了不小的麻烦,比如处理模块间的依赖关系 核心是通过define方法对无序的代码进行有序的模块化定义,通过require方法实现代码的模块化加载 需要载入的文件: require 主要作用是把庞大的客户端代码分割为各模块从而实现模块化管理,便于代码的编写与维护 require可以理解为一个工具库,帮助我们更好的架构前端框架,其本身并非前端框架 其次实现了异步加载解决了网页加载时的阻塞问题 客户端代码被定义为各模块后,模块之间错综复杂的依赖关系以及模块的按需加载、加载顺序就成了问题 require很好的解决了这个问题,它的模块化管理遵循AMD规范,模块加载不影响后续语句执行 不得不说的ADM规范 Asynchronous Module Definition - 异步加载模块规范 解决模块化编程带来的代码加载先后顺序问题及常规异步加载代码带来的不确定因素 载入require实现模块化编程 <script src="/static/js/require.min.js" data-main="/static/js/shop"><