Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Jquery如何将多个文件合并到一个具有相同作用域的main.js文件中_Javascript_Jquery - Fatal编程技术网

Javascript Jquery如何将多个文件合并到一个具有相同作用域的main.js文件中

Javascript Jquery如何将多个文件合并到一个具有相同作用域的main.js文件中,javascript,jquery,Javascript,Jquery,在我的项目中,我创建了一个main.js文件,其中包含我需要的所有JQUERY函数。 不幸的是,函数、事件、ajax调用等越来越多,我想(在开发中)拆分main.js 文件在多个文件(user.js、cars.js、initialize_plugin.js等,但在同一范围内)中,并在发布时合并到单个文件main.js文件中 main.js $(function() { var globalVar = "foo"; // MANAGE USERS function a

在我的项目中,我创建了一个main.js文件,其中包含我需要的所有JQUERY函数。
不幸的是,函数、事件、ajax调用等越来越多,我想(在开发中)拆分main.js 文件在多个文件(user.js、cars.js、initialize_plugin.js等,但在同一范围内)中,并在发布时合并到单个文件main.js文件中

main.js

$(function() {

    var globalVar = "foo";

    // MANAGE USERS

    function addUser () { .. }

    $("addUser").on("click", function() {
        ...
        $(this).data("value", globalVar);

    });

    ...

    // MANAGE CARS

    function addCar () { .. }

    $("addCar").on("click", function() {
        ...
        loadFancyboxPlugin()
    });


    // INITIALIZE EXTERNAL PLUGINS

    function loadFancyboxPlugin() {
        $( "[data-fancybox]" ).fancybox({});
    };

    $( ".date" ).datepicker();

    ...

});

我怎么能这么做?我怎样才能加入他们?谢谢

对于RequireJS来说,这听起来是一个完美的工作——如果你进入多个文件,我建议你查看名称空间,确保你不会意外地覆盖另一个文件中的函数或变量。在一个简单的示例中,每个文件都可以以
var myApp=myApp | |{}开头
,然后使用显示模块模式向每个文件添加所需的子名称空间,类似于:
var myApp.user=(函数(){return{addUser:addUser}}})()
其中
:addUser
指的是
return
语句上方文件中的
函数addUser…
。这样,您就可以像上面提到的那样使用RequireJs加载所需的文件,而且还可以确保安全。听起来对于RequireJs来说是一个完美的工作-如果您进入多个文件,我建议您查看名称空间,确保您不会意外地覆盖另一个文件中的函数或变量。在一个简单的示例中,每个文件都可以以
var myApp=myApp | |{}开头
,然后使用显示模块模式向每个文件添加所需的子名称空间,类似于:
var myApp.user=(函数(){return{addUser:addUser}}})()
其中
:addUser
指的是
return
语句上方文件中的
函数addUser…
。这样,您就可以使用上面提到的RequireJs加载所需的文件,而且还可以确保安全。