zoukankan      html  css  js  c++  java
  • JavaScript模块化

    js通过立即执行函数可以进行模块化。

    1 var myModule = (function(){
    2      //私有成员
    3      var ...
    4      
    5      return {
    6            //公有成员
    7      };      
    8 })();

    但是涉及复杂模块依赖关系上述方式就需要改造了。

    require.js是遵循AMD规范的JavaScript模块化库,。下面展示了如何使用require.js进行js模块化。

    1.定义一个模块mod1.js

    1 define(function(){
    2     return {a: 3};
    3 });

    2.定义需要依赖的模块mod2.js

    1 define(['mod'],function(m1){
    2     var a, b = 2, c = 3;
    3     a = c*m1.a;
    4     return {
    5         a: a,
    6         b: b
    7     };
    8 });

    define方法用来定义模块,有两个参数。第一个参数是该模块依赖的模块数组;第二个参数是一个回调函数,在函数中定义模块,return的部分是模块暴露出来的。回调函数的参数对应指向依赖模块数组。

    3.定义执行入口main.js

    1 require(['mod2'],function(m2){
    2      alert(m2.a*m2.b);
    3 });

    require定义了Javascript从哪里开始执行,如3执行回调函数,发现需要引用mod2就会加载mod2,同理,加载mod1。

    如此,require.js避免了多个模块依赖时,复杂的加载顺序问题。

    参考:

    慕课网阿当大话西游之WEB组件

  • 相关阅读:
    c#下实现ping操作
    DevExpress 经典常用功能代码收集
    WPF – 使用触发器
    XtraGrid使用方法
    [读书笔记]STL源码剖析
    [微软面试100题]6170
    [读书笔记]Thinking in C++
    [转][算法]google page rank算法
    [微软面试100题]7180
    [转][算法]链接分析算法之:HITS算法
  • 原文地址:https://www.cnblogs.com/feitan/p/5409333.html
Copyright © 2011-2022 走看看