Ankündigung

Einklappen
Keine Ankündigung bisher.

Closure Compiler Problem??

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Closure Compiler Problem??

    Kann mir mal einer von euch sagen, warum ich, wenn ich nachfolgenden Code durch den Compiler jage, nur Mist als Antwort bekomme?

    Code:
    (function(){
        function LoadMapAPI()
        {
            if(debug == 1)
            {
                console.log('LoadMapAPI Start mit Callback auf LoadHelperScripts');
            }
    
            // Map-API einbinden
            // Anschließend Callback aufrufen
            var script = document.createElement("script");
            script.src = "https://maps.googleapis.com/maps/api/js?v=3&locale=de_DE&callback=aLoadHelperScriptsTest&key="+gmapkey;
            script.type = "text/javascript";
    
            var d = document.body;
            d.appendChild(script);
        }
    })();
    Antwort
    Code:
    (function(){})();
    Compiler:
    https://closure-compiler.appspot.com/home

    Das hat nun den ganzen Tag über mit gefühlt 100 Scripten fehlerfrei funktioniert. Das ist nun das letzte Script und irgendwie will das gar nicht.

  • #2
    Clean Code
    ich sehe den Fehler nicht...

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare

    Support 24h Bereitschaft 01522 9406036- NUR Für Kunden von SEO NW! Faires Hosting - Alternative Suchmaschinen

    Kommentar


    • #3
      Ich sehe ihn auch nicht, habe ihn aber gefunden :)

      Eigentlich ganz einfach, wenn man es weiß. Das da oben ist nur ein Teil vom Script, geht aber auch nicht, kommt genau das gleiche Ergebnis bei raus. Was ich nicht wusste. Der Compiler bereinigt auch die Funktionen, wenn diese im Script selbst nicht aufgerufen werden. Und genau das ist der Fall, es gibt keinen direkten Aufruf, sondern das geht per oncklick auf einem Element, das dann "kalender" oder "ins" aufruft.

      Der sagt also, da drinnen sind 47 Funktionen und keine davon wird aufgerufen, dann lösche ich die einfach alle. Zwei Änderungen vorgenommen und die beiden Funktionen "kalender" und "ins" ins globale Scope gelegt und siehe da, jetzt passt es :) Jetzt weiß er, die beiden werden global benötigt und alle anderen 45 Funktionen werden von den beiden benötigt, also sind die auch da ....

      Test Edit 2203
      Zuletzt geändert von Synonym; 31.08.2017, 21:04.

      Kommentar

      Lädt...
      X

      Das Rechtliche
      Impressum | Widerruf | Datenschutz | Disclaimer |