简单合并js文件导致错误和jquery未定义

lyu*_*uba 2 javascript merge jquery

我在这里处理一个纯粹的js前端,并试图今天使用Juicer来压缩javascripts.它在没有缩小的情况下工作得很好,因为在JsLint找到的库中存在大量错误,其中验证器必须通过才能使文件最小化.我把它保留原样,因为至少合并工作会很酷,但似乎并非如此.虽然最终所有文件确实合并为一个,但app停止工作,因为jquery被认为是未定义的.在文件中保留在第一位.

这种奇怪行为的可能原因是什么?非常感谢您的回答!

UPD这是合并文件链接

rsp*_*rsp 6

由于您只想合并它们而不是缩小它们,可以尝试手动合并它们.只是:

cat file1.js file2.js file3.js > all.js
Run Code Online (Sandbox Code Playgroud)

CSS也是如此,不需要花哨的合并.

对于JavaScript的缩小我推荐UglifyJS,因为与其他工具不同,它往往不会破坏代码.jlg使用UglifyJS.

当您通过简单连接合并JavaScript文件时,重要的是文件的顺序不会破坏依赖关系.有时会导致问题的另一件事是缺少分号(那些可能会在缩小后破坏代码)或在文件末尾缺少换行符.