Ich arbeite an video.js Bibliothek. Ich habe versucht, es zu ändern, so dass es einen benutzerdefinierten Player anstelle des HTML5-Players verwendet. So ersetzte ich die Funktionsaufrufe play() usw. mit den Aufrufen an meinen benutzerdefinierten Player (sagen custFunc1()). Diese Aufrufe sind in einer separaten javascript Datei definiert: custPlayer.js.Aufruf einer außerhalb der Javascript-Bibliothek definierten Funktion
Also in meiner index.html Datei, werde ich zuerst die custPlayer.js Datei enthält und dann die eingebaute video.js Datei.
Allerdings ist das Problem, dass beim Erstellen des video.js-Paket mit Grunt, bekomme ich den Fehler, dass custFunc1 ist nicht definiert und damit Grunt ist nicht in der Lage, die video.js-Bibliothek zu erstellen. Jetzt
konnte ich von einem Kollegen, um herauszufinden, dass das Hinzufügen von /* globalen custFunc1 */ zu Beginn der jeweiligen Datei im video.js Paket aus, wo ich custFunc1 behebt das Problem aufrufen. Das Grunzen gelingt und es funktioniert gut.
Also, was ich wissen will, ist:
Wie funktioniert das das Problem tatsächlich lösen, da dies genau wie ein Kommentar in Javascript ist, wie es dies anders nicht behandeln und verstehen, dass es anzeigt, dass die Funktionsdefinition wird außerhalb der Bibliothek vorhanden sein?
Ist das Wort global eine Art von Keyword in Javascript?
Gibt es andere Möglichkeiten, dies zu erreichen, abgesehen von dem, was ich erwähnt habe?
Auf eine etwas andere Anmerkung, wollte ich fragen, ob grunt ist das grobe Äquivalent von make?