这个漫长的帖子的最终目标是Uglify&使用CodeKit Hook对输出文件进行切换(在其他所有内容之后),这样一旦文件组合起来,然后从Hook运行Uglify,那么" eof"错误被绕过。
我尝试在CodeKit的UI的Bash脚本钩子区域中使用的一些示例。下面还详细介绍了我的解决方案在CodeKit中的结构。
感谢阅读。
// @codekit-prepend "rules.js"
// @codekit-prepend "domStart.js"
// @codekit-prepend "mainStructure.js"
// @codekit-prepend "pages.js"
// @codekit-prepend "grids.js"
// @codekit-prepend "modals.js"
// @codekit-prepend "thirdParty.js"
// @codekit-prepend "s508.js"
// @codekit-prepend "domEnd.js"
使用CodeKit3我有一个文件,其中有几个其他文件的前缀,如下所示。
$(function(){
CodeKit的选项非常易于使用,但我遇到了问题。因为我预先添加的许多文件都需要DOM准备好,所以我创建了两个文件,一个是" domStart.js"和" domEnd.js"他们听起来就像他们一样。
" domStart.js"包含...
});//end ready
" domEnd.js"包含...
$(function(){ *prepended files* });//end ready
因此,中间的所有内容现在都包含在一个UglifyJS: Minification failed:
Parse error at /Users/colemmic/dev/roomstogo-store/roomstogo-web/src/main/webapp/static/js/common/domStart.js:1,13
$(function(){
^
SyntaxError: Unexpected token: eof (undefined)
at JS_Parse_Error.get (eval at <anonymous> (/Applications/CodeKit.app/Contents/Resources/engines/node_modules/uglify-js/tools/node.js:27:1), <anonymous>:86:23)
at /Applications/CodeKit.app/Contents/Resources/engines/node_modules/uglify-js/bin/uglifyjs:384:39
at time_it (/Applications/CodeKit.app/Contents/Resources/engines/node_modules/uglify-js/bin/uglifyjs:620:15)
at /Applications/CodeKit.app/Contents/Resources/engines/node_modules/uglify-js/bin/uglifyjs:345:9
at tryToString (fs.js:455:3)
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:442:12)
语句中。
问题是当我通过CodeKits UI转换压缩,uglify或破坏文件时,我在CodeKit的控制台中得到以下错误输出。我知道这是因为&#34; domStart.js&#34;文件包含一个开头&#34; {&#34;没有闭包,因此文件错误结束。
{{1}}
答案 0 :(得分:0)
经过数小时的额外研究后,我设计了一个有效的解决方案。
因为CodeKit3略有不同,所以必须定义uglify的完整路径。
$new_array = array();
foreach($teach_array as $item){ // Loop the teacher_array
if(!in_array($item,$langs_array)){ // If the teach_array value doesn't exist in the lang_array, add the value
$new_array[] = $item;
}
}
所以上面的陈述并不遥远,但因为应用程序包含其中的所有框架,只需要在它们运行之前定义它们。