最新のクロージャコンパイラjarファイルをダウンロードし、hereの指示に従って、別の場所で定義されているJS関数への参照を保持する方法を確認してください。高度な最適化とExternsを使用したクロージャコンパイラ
function hello(nom)
{
alert(nom + familyName());
}
私の外部宣言
は、私は、問題function familyName(){}
コードが含まれているをファイルに定義されexterns.jsされている次のように
私のテストスクリプトは、hello.jsですコマンド
java -jar closure.jar --js hello.js --externs externs.js --js_output_file hello-compiled.js --compilation_level ADVANCED_OPTIMIZATIONS
ADVANED_OPTIMIZATIONS
がなくても、すべて正常に動作します。効果的にコードを縮小します。しかし、高度なフラグを入れると、出力hello_compiled.js
が空の1バイトファイルとして出力されます。明らかに、私は何かを誤解しています。私はここに正しい道を私に置くことができるかもしれない誰にも義務づけられます。
よく斑点を付けられました - 今言いました - 常識です。コンパイラに最適化を依頼していて、コンパイルされた最適化された出力に冗長なコードがあることを期待していました。 – DroidOS