Javascript in Plugin nutzen

Hallo,

ich habe bereits das Forum durchsucht und auch Google befragt, aber ich schaffe es einfach nicht eine Javascript Datei Lauffähig in mein Plugin einzubinden.

Ich habe bereits jeglichen Kram den ich gefunden habe probiert, aktuell sieht mein Code so aus:

use Shopware\Components\Theme\JavascriptDefinition;

public static function getSubscribedEvents()
    {
        return [
            'Theme_Inheritance_Template_Directories_Collected' => 'extendTemplateDirectories',
            'Theme_Compiler_Collect_Plugin_Less' => 'onCollectLessFile',
            'Theme_Compiler_Collect_Plugin_Javascript' => 'onCollectJavaScript',
            'sBasket::sGetBasket::after' => 'onGetProductAfter'
        ];
    }

public function onCollectJavaScript(\Enlight_Event_EventArgs $args)
    {
        return new JavascriptDefinition([__DIR__. '/Resources/views/frontend/_public/src/js/equipmentSlider.js']);
    }

aktuell steht in der js-Datei nur ein alert(‚test‘); drin.

Beste Grüße

Hallo @BB-8,

wenn du die JS Dateien unter „PLUGINNAME/Resources/frontend/js/“ packst, sollten die JS Dateien automatisch eingebunden werden (ab SW 5.2.13). Siehe auch die Dokumentation unter Plugin quick Startup Guide

Das Theme kompilieren nicht vergessen. Erst dann wird das Event Theme_Compiler_Collect_Plugin_Javascript geworfen.

vg
abdullah

1 Like

Hallo abdullah,

vielen Dank für deine Hilfe!

Ich dachte das hätte ich bereits versucht, da es so in der Dokumentation steht, aber irgendwie hatte es nicht geklappt. Da hatte ich wohl doch einen Fehler drin den ich vor Frust nicht mehr gesehen hatte. Jetzt funktioniert es wunderbar!

Beste Grüße