TypeError: $.subscribe is not a function

Hallo,

auf den Detailseiten der Produkte bekomme ich einen Fehler in der Konsole, wenn ich eine Produktvariante wähle erscheint:

TypeError: $.subscribe is not a function

Mein Custom JavaScript habe ich wie in der Dokumentation beschrieben mit folgender Funktion gewrapped:

$.subscribe("plugin/swAjaxVariant/onRequestData", function() {

    // mein custom code

}

Kann mir jemand weiterhelfen?

Hallo @Zloyvoin‍,

es hört sich danach an, dass dein Custom JavaScript vor unseren JavaScript Code geladen wird. Schaue bitte in die kompilierte JavaScript Datei wann die Funktion $.subscribe definiert wird und wann dein Aufruf kommt.

Es könnte sein dass deine Theme Vererbung hier reinspielt und es dadurch zu Problemen kommt. Kannst du genauer schildern wie deine Theme-Vererbung aufgebaut ist, wann die kompilierte Datei eingebunden wird und wie du dein Custom JavaScript eingebunden hast? Gerne auch ein Link zum Shop, damit ich und andere mal drüberschauen kann  Smile So ist es immer sehr schwer herauszufinden wo das Problem genau liegt.

Viele Grüße aus Schöppingen,
Stephan Pohl  Shopware

// edit: Ich habe das Thema in die passende Kategorie „Themes & Design“ geschoben.

Hallo [@Stephan Pohl](http://forum.shopware.com/profile/2/Stephan Pohl „Stephan Pohl“)‍

mein custom Script habe ich in der theme.php eingebunden

protected $javascript = [
        'src/js/jquery.min.js',
        'src/js/jquery-ui.min.js',
        'src/js/custom.js'
    ];

Meine Shop URL lautet: http://moebelundkonsorten.de

Auch wenn es sich um mein eigenes Custom Theme ändert, an der Reihenfolge der Scripts habe ich nichts geändert.

Hallo @Zloyvoin‍,

das Problem ist dass du jQuery in deinen eigenen Theme überlädst. Wir binden die “subscribe” Methode an das jQuery Objekt welches wir mit dem Responsive Theme ausliefern. Durch das Überladen von jQuery ist die Funktion daher nicht mehr definiert und es kommt zu dem geschilderten Fehler. Kannst du ggf. darauf verzichten eine eigene jQuery Version einzubinden?

Viele Grüße aus Schöppingen,
Stephan Pohl  Shopware

1 „Gefällt mir“

@Stephan Pohl schrieb:

Hallo @Zloyvoin‍,

das Problem ist dass du jQuery in deinen eigenen Theme überlädst. Wir binden die „subscribe“ Methode an das jQuery Objekt welches wir mit dem Responsive Theme ausliefern. Durch das Überladen von jQuery ist die Funktion daher nicht mehr definiert und es kommt zu dem geschilderten Fehler. Kannst du ggf. darauf verzichten eine eigene jQuery Version einzubinden?

Viele Grüße aus Schöppingen,
Stephan Pohl 

Vielen Dank für den Hinweis, ich werde mal überprüfen, ob meine Funktionen auch alle mit dem jquery von Shopware auskommen. Nochmals besten Dank, dass mir sogar an einem Sonntag geholfen wird.

Beste Grüße aus Bielefeld,
Marcel

EDIT: ich weiß nicht mehr aus welchem Grund ich damals eine eigene jQuery Version eingebunden hatte, jedoch funktioniert nun in der Tat alles. Beste Grüße