问题:js文件须严格保证加载顺序(比如上例的1.js要在2.js的前面),依赖性最大的模块一定要放到最后加载,当依赖关系很复杂的时候,代码的编写和维护都会变得困难!
C语言中模块开发-include
requireJS库——借鉴类似C中模块依赖解决方式(include)
<script src="js/require.js" data-main="js/main.js"></script>
假定主模块依赖jquery、underscore和backbone这三个模块,main.js就可以这样写:
require(['jquery', 'underscore', 'backbone'], function ($, _, Backbone){ // some code here });
采用AMD规范后:
define(['myLib'], function(myLib){ function foo(){ myLib.doSomething(); } return { foo : foo }; });
参考:http://www.ruanyifeng.com/blog/2012/11/require_js.html