Javascript Split browserify在一些其他文件上绑定文件,保持它们之间的依赖关系

Javascript Split browserify在一些其他文件上绑定文件,保持它们之间的依赖关系,javascript,node.js,browserify,Javascript,Node.js,Browserify,我的应用程序的“main.js”文件已经成长了很多,所以我想找到一种方法将其拆分到其他不同的文件上, 为了避免只有一个巨大的文件延迟了我的页面的第一次加载 我目前发布了一个bundle file=>main.js,其中包含许多模块,这些模块与每个模块交互 我想拆分/转换以下内容: - main.js ===> - global.js - a.js - b.js

我的应用程序的“main.js”文件已经成长了很多,所以我想找到一种方法将其拆分到其他不同的文件上, 为了避免只有一个巨大的文件延迟了我的页面的第一次加载

我目前发布了一个bundle file=>main.js,其中包含许多模块,这些模块与每个模块交互

我想拆分/转换以下内容:

            - main.js ===> - global.js
                           - a.js
                           - b.js
                           - c.js
因此,对于我的三个网页,我希望加载如下脚本:

//Page A
<script src="global.js">
<script src="a.js">

//Page B
<script src="global.js">
<script src="b.js">

//Page C
<script src="global.js">
<script src="c.js">
a、 js

b、 js

c、 js

我认为这可以很容易地解决在[a,b,c]上为每一个绑定[global],然后使用[global-a,global-b,global-c]

但事实上,大部分代码都在global内部,因此global在第一次加载到页面上时不会被缓存,它将支付页面上的加载时间

我也不想让[global]的变量作为全局变量


我能做什么?可能会与AMD或类似的公司合并?

您似乎需要factor bundle来完成这样的设置:@Sombriks很好。我认为事情比那更复杂。clobal模块将具有依赖于或自身的类,然后与其他模块通信。因此,我需要的是一个范围,其中包装了全局和a或b或c的每个网页,我不想重复代码加载的东西,我已经加载。有人明白我的方法吗?
//[module_global1]
  var mod = {};
  (...)
  module.exports = mod;


//[module_global2]
  var mod = {}; 
  var module_global1 = require("./module_global1");

  //(...)
  module.exports = mod;
//[module_a1]
  var mod = {};
  (...)
  module.exports = mod;


//[module_a2]
  var mod = {}; 
  var module_a1 = require("./module_a1");

  //HERE => How?
  var module_global1 = require("./module_global1");

  //(...)
  module.exports = mod;
//[module_b1]
  var mod = {};
  (...)
  module.exports = mod;


//[module_b2]
  var mod = {}; 
  var module_b1 = require("./module_b1");

  //(...)
  module.exports = mod;

//[module_b3]
  var mod = {}; 
  var module_b1 = require("./module_b1");
  var module_b2 = require("./module_b2");

  //HERE => How?
  var module_global2 = require("./module_global2");

  //(...)
  module.exports = mod;
//[module_c1]
  var mod = {};

  //HERE => How?
  var module_b2 = require("./module_b2");

  (...)
  module.exports = mod;