Wenn Sie drupal_add_js()
in Ihrer Formularerstellungsfunktion verwenden, hängen Sie JavaScript an eine Seite an, und das war's.
Wenn Sie verwenden $form['#attached']['js']
, können andere Module mit ihnen interagieren, sie testen und nach Bedarf ändern hook_form_alter()
. Auf diese Weise sollten Sie jedes Mal auswählen, wenn Ihr JavaScript funktional mit einem bestimmten Formular verknüpft ist.
Davon abgesehen sind sie funktional gleich.
Beachten Sie, dass es normalerweise besser ist, JavaScript-Bibliotheken als einfache JavaScript-Dateien zu verwenden, da Sie damit Versionen deklarieren, Beziehungen zwischen JS und CSS beibehalten, Abhängigkeiten verwalten und im Allgemeinen viel leistungsfähiger sind.
Dann sollten Sie natürlich verwenden, $form['#attached']['library']
wenn Ihre JavaScript-Bibliothek funktional mit einem bestimmten Formular verknüpft ist, und nur verwenden, drupal_add_library()
wenn kein Formular in irgendeiner Weise mit der Funktion der Bibliothek zusammenhängt.
drupal_add_js()
eine Vorlagendatei einfügen , es wird Dinge brechen, wenn Caching / Aggregation aktiviert ist