drupal 8 – Anular un solo archivo JavaScript de un módulo

Pregunta:

En el archivo libraries.yml de mi tema, después de la sección de estilo global, estoy tratando de reemplazar un archivo JavaScript del módulo principal de la barra de herramientas (la adición de padding-top al cuerpo interfiere con nuestro tema, así que simplemente cambiando eso a margin- cima).

libraries-override:
  toolbar/toolbar:
    js:
      js/views/BodyVisualView.js: js/views/BodyVisualView.js

Recibo repetidamente el error:

Drupal \ Core \ Asset \ Exception \ IncompleteLibraryDefinitionException: Definición de biblioteca incompleta para la definición 'libraries-override' en la extensión 'mythemename' en Drupal \ Core \ Asset \ LibraryDiscoveryParser-> buildByExtension () (línea 93 de / vagrant / web / core / lib /Drupal/Core/Asset/LibraryDiscoveryParser.php).

Respuesta:

La respuesta es simplemente que la definición de libraries-override debe ir en .info.yml, no en .libraries.yml:

Entonces en mythemename.info.yml:

libraries:
  - mythemename/global-styling
libraries-override:
  toolbar/toolbar:
    js:
      js/views/BodyVisualView.js: js/views/BodyVisualView.js

Si se coloca lógicamente allí, junto con la definición de las bibliotecas, funciona perfectamente.

Tenga en cuenta que la segunda 'barra de herramientas' es el nombre de la biblioteca de toolbar.libraries.yml, otros nombres de biblioteca incluyen toolbar.menu, por lo que si anula un archivo desde allí, sería "toolbar / toolbar.menu:" en lugar de "toolbar /barra de herramientas:".

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım