• JavaScript 在浏览器环境中的模块管理


    如果需要,请自行复制下或下载列代码清单到本地运行(如果不修改源码,这些文件需要在同一目录 ,并且以下列文件名对应) 
    我只在Chrome浏览器中调试过(现在也没去处理浏览器兼容方面的问题)
    ​1. 代码
    /**
     * < main.js >
     * @DATE   2012/11/29
     * @author maolion.j@gmail.com
     * 
     */
     
     
    //
    Define( "module2", Depend( "module1", "@module1.m1" ), function( require, exports ){
        console.log( "invoke @module2" );
        exports.name = "@module2";
        require("module1").say();
        require("module2").print("maolion");
    } );
     
    Use( a = Module( "module1.js", "@module1.m1", "@module1.m2", "@module2" ), function( require ){
        console.log( "invoke Main" );
        var b = require( "module1" );
        var x = require( "@module2" );
        var c = require( "@module1.m1" );
        var d = require( "@module1.m2" );
        var x = require( "module2" );
     
        x.print( "joye" );
        //console.log(x.name);
    } );
    2.代码
    /**
     * < module1.js >
     * @DATE   2012/11/29
     * @author maolion.j@gmail.com
     * 
     */
      
    Define( "module1" , Depend( "@module2", "module2" ), function( require, exports, module1 ){
        console.log( "invoke module1" );
        require("module2").print( "World" );
        exports.say = function(){
            console.log( "Hi! " + require( "@module2" ).name );
        }
    });
     
    Define( "module1.m1", function( require, exports, m1 ){
        console.log( "invoke module1.m1" );
    });
     
    Define( "module1.m2", function( require, exports, m2 ){
        console.log( "invoke module1.m2" );
    });
    3. 代码
    /**
     * < module2.js >
     * @DATE   2012/11/29
     * @author maolion.j@gmail.com
     * http://www.huiyi8.com/yinxiao/​
     */音效网
    Define( "module2", function( require, exports, module2 ){
        console.log( "invoke module2" );
        exports.print = function( str ){
            console.log( "Hello, " + str );
        }
    });
    4. 代码
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
        <meta content="text/html; charset=UTF-8" http-equiv="content-type">
     
        <title>Untitled</title>
     
        <script type="text/javascript" src="Cox.Module.test.js"></script>
        <script type="text/javascript" src="main.js"></script>
        <script type="text/javascript">
            confirm = function(){ return false };
        </script>
    </head>
    <body>
        <a href="/">index</a>
    </body>
    </html>

  • 相关阅读:
    MySQL数据库的安装与配置
    java中的反射机制
    详谈设计模式之单列模式
    servlet内部转发与重定向
    servlet基础语句总结
    Servlet映射的俩种方法以及优缺点
    eclipse和idea的快捷键比较及idea如何调节eclipse的快捷键
    servlet
    JDK下载与安装教程
    正则表达式查询
  • 原文地址:https://www.cnblogs.com/xkzy/p/3873502.html
Copyright © 2020-2023  润新知