使用Closure Compiler在ADVANCED模式下使用PIXI.js编译项目

时间:2015-12-05 23:49:53

标签: google-closure-compiler pixi.js

我正在尝试编译一个项目,该项目使用pixi.js库和ADVANCED模式下的闭包编译器,如下所示:

You should not include a minified version of pixi during your minifying process. Instead, you can try to include the unminified version. https://github.com/pixijs/pixi.js/issues/1097

我正在使用这个文件(请纠正我这是不正确的):

https://raw.githubusercontent.com/pixijs/pixi.js/master/bin/pixi.js

和最新的编译器(v20151015)

--summary_detail_level 3
--warning_level VERBOSE
--compilation_level ADVANCED
--source_map_format V3
--js ... ( project files here, including pixi.js )
--js_output_file Output.min.js

编译错误:

lib/pixi.js:35: ERROR - variable exports is undeclared
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else 

就像一个实验一样,我添加了@fileoverview来看看我会得到什么

/**
* @fileoverview
* @suppress {unknownDefines|checkTypes|checkVars|misplacedTypeAnnotation|nonStandardJsDocs|suspiciousCode|checkVars|accessControls|ambiguousFunctionDecl|deprecatedAnnotations|missingReturn|newCheckTypes}
*/

我得到的输出是412警告(全部在Pixi内):

0 error(s), 412 warning(s), 61.8% typed

我不确定我是否正在使用正确的pixi.js文件,@ sbondor正在谈论的pixi.dev.js文件不再在线:

https://github.com/pixijs/pixi.js/issues/1260

那么,我做错了什么? 如何编写一个包含pixi.js的项目?

1 个答案:

答案 0 :(得分:1)

我不相信PIXI.js与编译器的ADVANCED模式兼容。

然而,快速浏览一下我会发现您需要尝试的一些事项:

- process_common_js_modules

PIXI对其某些文件使用通用模块定义。编译器可以删除和重写某些UMD模块包装器,但是您需要指定--process_common_js_modules标志。这也将处理variable exports is undeclared警告。

- common_js_entry_module

您需要使用此标志为您的应用程序指定入口模块。它是您的应用程序的基本文件。