你能把多个文件缩小成一个吗?

时间:2013-02-21 08:29:00

标签: javascript minify module-pattern

我将我的JavaScript代码分成几个文件,全部使用模块模式(更新一个全局变量,比如MyApp,使用新功能和成员。

是否可以将文件缩小为一个而不会破坏范围

示例我想缩小:

File1.js

var Module = (function(ns) {

 ns.fun1 = function() { alert('fun1'); };
 return ns;

})(Module || {});

File2.js

var Module = (function(ns) {

 ns.fun2 = function() { alert('fun2'); };
 return ns;

})(Module || {});

2 个答案:

答案 0 :(得分:2)

全局范围实际上是全局的,因为如果要从一个文件或多个文件更改它,则无关紧要。但是,文件的顺序很重要,具体取决于您使用的模块模式风格。对于一个好的写入,也包括跨文件私有状态,请阅读:http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth

答案 1 :(得分:1)

是的,你可以,并且是一个很好的工作方式,对每个人来说,特别是如果更多的开发人员参与并且健康的应用程序。

我使用Minify类(http://code.google.com/p/minify/)和一个特殊的配置文件(https://beat.snipt.net/minify-config-file-minify-each-folder-from-project-1-minified-file/)来扫描我的文件夹,并为每个子文件夹创建一个文件(JS或CSS)。 这样我就可以制作模块化的JS或CSS文件,可以在类或常规文件上进行拆分。

关键是文件的ORDER,取决于读取文件夹功能和操作系统类型可能不同(ex php readdir vs scandir)

相关问题