jQuery mit Google Closure Compiler kompiliert
Hat jemand zusammengestellt, jQuery, gegen Google ' s neu veröffentlicht Verschluss compiler?
Es wurde berichtet, große Ersparnisse in der code-Größe. Ich bin gespannt, was der nutzen ist, wenn jQuery kompiliert wurde.
InformationsquelleAutor der Frage Ted | 2009-11-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
John Resig berichtete einen Fehler auf rekursiver Funktionen, wenn er versucht zu kompilieren eine nightly von jQuery 1.4, also es sind ein paar Knicke ausgearbeitet werden. Ich würde nicht verwenden ein jQuery zusammengestellt mit Closure Compiler, ohne dass die übergabe der jQuery-testbed.
http://code.google.com/p/closure-compiler/issues/detail?id=1&=1#c2
InformationsquelleAutor der Antwort Nosredna
Ich habe versucht, mit jQuery jQuery 1.3.2
Gewinn von ~7KB
Aber auch Berichte 15 Warnungen und ich wollte nicht testen ob es noch funktioniert
InformationsquelleAutor der Antwort jitter
Den closure compiler eliminiert den code, den Sie gar nicht verwenden. Der typische web-Seite ist nur mit einem kleinen Bruchteil von jQuery-Funktionen, so dass die meisten zugute kommen wird, kompilieren Sie Ihren code zusammen mit der vollständigen version von jQuery.
InformationsquelleAutor der Antwort Steve Hanov
Mit ADVANCED_OPTIMIZATIONS ausgeschaltet:
Mit ADVANCED_OPTIMIZATIONS eingeschaltet: es funktioniert nicht unverändert. Mit ADVANCED_OPTIMIZATIONS eingeschaltet und alles, was ich finden kann, zu exportieren, exportiert... es noch nicht ganz funktioniert, und der code ist bereits bis zu 53466 bytes erneut (und 18785, gzipped, die mehr als die Gzip-closured code ohne ADVANCED_OPTIMIZATIONS), damit es nicht so aussieht, wie eine gewinnende Aussage.
InformationsquelleAutor der Antwort hobbs
Ab jQuery 1.4, Google ' s Closure Compiler verwendet als Standard-Technik für die Verkleinerung jQuery-Versionen. Jedoch, jQuery nutzt nur den SIMPLE_OPTIMIZATIONS Einstellungen. Das jQuery-team hat keine Pläne zur Unterstützung ADVANCED_OPTIMIZATIONS.
InformationsquelleAutor der Antwort mndrix
Aus Neugier, ich habe einen SlickSpeed test der neuesten Prototype und jQuery libs, geschrumpft mit YUI und Schließung. Sie führen die tests hier.
Als andere haben darauf hingewiesen, kompilieren mit ADVANCED_OPT funktioniert nicht, aber wenn sich jemand die Arbeit machen will, ich werde glücklich sein, um das hinzufügen der Ergebnisse zu den SlickSpeed test.
InformationsquelleAutor der Antwort Jauder Ho
Nicht-Schließung nur minimieren und benennt vars? jQuery hat bereits eine .min version. Minifying von der Schließung wieder wird wahrscheinlich minimal hilfreich und potenziell gefährlich.
Edit: ich habe es einfach gemacht.
Dies ist auf die bereits abgebaut version. Es gibt eine demo hier: http://closure-compiler.appspot.com/home
InformationsquelleAutor der Antwort Jourkey
Ich verwendet, Verschluss (mit ADVANCED_OPTIMIZATIONS) zum komprimieren der javascript-code für eine single-page-Website, die ich host und sah eine signifikante Größe Einsparungen über den YUI-Compressor. Also suchte ich in schrumpfenden jQuery für die Website als gut, da es sicherlich nicht die entier jQuery-Bibliothek.
Bekomme ich Warnungen, jedes mal, wenn ich ausführen von jQuery-durch die compiler, meist zeigen sich Teile des Codes, die nicht verwendet werden. Sogar noch, den kompilierten code nicht funktioniert. Das primäre Problem, das ich sehe ist, dass nicht alles exportiert wird ordnungsgemäß durch den compiler. Ich war in der Lage, leicht export-Funktionen von meinem eigenen code durch Anbringung an das window-Objekt, aber ich habe noch nicht in der Lage gewesen, dies zu tun, noch mit jQuery.
Die gute Nachricht ist, dass John Resig ist bereits das Experimentieren mit Verschluss. Ich vermute, wir werden sehen, neue Versionen und beide sind kompatibel in der nahen Zukunft.
InformationsquelleAutor der Antwort Scott Johnson
Habe ich versucht mit Ihr online-compileres funktioniert gut.
InformationsquelleAutor der Antwort Roch
jQuery nicht kompatibel ist (noch) nicht mit dem Closure Compiler im " advanced mode. Ich bin damit einverstanden, es wäre eine sehr gute Sache, um ihn kompatibel zu machen, weil seine Methode-Verkettung syntax eignet sich sehr leicht Prototyp für die Virtualisierung deutlich verbesserte Ausführungsgeschwindigkeit.
In der Tat, unter den gängigen JavaScript-Bibliotheken (andere als die Schließung der Bibliothek, das ist), nur das Dojo Toolkit ist kompatibel mit Verschluss-Modus Erweitert.
http://dojo-toolkit.33424.n3.nabble.com/file/n2636749/Using_the_Dojo_Toolkit_with_the_Closure_Compiler.pdf?by-user=t
InformationsquelleAutor der Antwort Stephen Chung