Wie verwende ich eine jQuery-Version, die sich von der vom Core verwendeten Standardversion unterscheidet?


12

Ich muss eine andere jQuery-Version verwenden. Derzeit verwendet Drupal jQuery 3.2.1, ich benötige jedoch eine frühere Version.

In Drupal 7 können Sie die jQuery-Version problemlos mit dem jQuery Update- Modul ändern . Wie kann ich mit Drupal 8 dasselbe erreichen?


Das Modul jquery_update war damals dazu gedacht, die Version von jQuery zu verbessern, da die Kernversion fast nie mit dem Tempo aktualisiert wurde, mit dem sich jQuery bewegte. Sie können die hier beschriebene Überschreibungsmethode ausprobieren: drupal.org/node/2497313 - Beachten Sie , dass andere Core- / Contrib-Module, die auf jQuery basieren , in 8.4.x mit einer älteren Version von jQuery beschädigt werden können.
Kevin

Hier ist eine ähnliche Frage unter Verwendung des Override / Extend-Ansatzes: drupal.stackexchange.com/q/200418/57
Kevin

Siehe den Abschnitt "Überschreiben und Erweitern von Bibliotheken" hier: drupal.org/docs/8/theming-drupal-8/…
Kevin

Antworten:


15

Fügen Sie Ihre benutzerdefinierte jQuery-Bibliothek in Ihre mytheme.libraries.yml ein:

jquery-custom:
  remote: https://github.com/jquery/jquery
  version: "2.2.4"
  license:
    name: MIT
    url: https://github.com/jquery/jquery/blob/2.2.4/LICENSE.txt
    gpl-compatible: true
  js:
    js/jquery-2.2.4.min.js: { minified: true, weight: -20 }

Überschreiben Sie dann die jQuery-Kernbibliothek in Ihrer mytheme.info.yml:

libraries-override:
  # Replace an entire library.
  core/jquery: mytheme/jquery-custom

Das hat nur bei mir funktioniert. Wenn ich den Core / jquery überschreibe (auch mit der gleichen Version von jQuery), erhalte ich eine ganze Ladung .once () ist kein Funktionsfehler von Drupal irgendwo.
Jeffrey Van Alstine
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.