Ich erhalte einen JavaScript- Typfehler in Minicart, Produktansichtseite und Checkout-Seite .
TypeError: $.widget is not a function
$.widget('mage.priceBox')
$.widget('mage.dataPost')
Wie kann ich das lösen?
Ich erhalte einen JavaScript- Typfehler in Minicart, Produktansichtseite und Checkout-Seite .
TypeError: $.widget is not a function
$.widget('mage.priceBox')
$.widget('mage.dataPost')
Wie kann ich das lösen?
Antworten:
Ich hatte das gleiche Problem mit Porto Theme. In meinem Fall wurde manchmal jQuery erkannt, manchmal nicht. Leider habe ich die Ursache nicht verstanden, aber ich habe eine Lösung gefunden.
Kurzum: Alle Javascript-Dateien zusammenführen.
Stores -> Configuration -> Advanced -> Developer -> JavaScript Settings
Aktivieren Sie:
Es wird empfohlen, die statischen Dateien bereitzustellen
bin/magento setup:static-content:deploy
Cache unter löschen System -> Cache Management
Additional Cache Management
Region wählen Sie die SchaltflächeFlush CSS/Javascript Cache
Flush Magento Cache
danachLöschen Sie nun den Cache im Browser und laden Sie ihn neu.
Für die Entwicklung dieser Lösung ist nicht zufriedenstellend, aber zumindest für die Produktivität sollte die Verwendung eine gut funktionierende Lösung sein, ohne unvorhersehbares Verhalten.
Ich hoffe es hilft..
map: { '*': {
wird es verwendet und manchmal paths: {
...
Ich hatte auch dieses Problem, aber dann bin ich auf diesen Artikel gestoßen : http://www.danjoseph.me/2016/09/16/magento-2-widget-not-function/
In dem Artikel erklärt er, dass jquery ein zweites Mal auf der Seite geladen wurde und daher die zuvor von magento geladene Version überschreibt. Für mich war es ein Marketing-Skript, das aus irgendeinem Grund auch jquery lud. jQuery sollte von diesem Tag nur einmal in den Kopf geladen werden und alle anderen sollten entfernt werden.
<script type="text/javascript" charset="utf-8" async="" data-requirecontext="_" data-requiremodule="jquery" src="http://seatup.local/pub/static/frontend/Seatup/theme/en_US/jquery.js"></script>
Gehen Sie zu Ihrem Themenordner und suchen Sie die folgende Datei im Ordner Magento_Theme
default_head_blocks.xml
und ersetzen
<script src="jquery.js" />
mit
<remove src="jquery.js" />
Stellen Sie sicher, dass Sie den Cache bereinigen und die Seite aktualisieren.
Ich hatte das gleiche Problem und habe es mit der obigen Methode gelöst.
Uncaught Error: Bootstrap's JavaScript requires jQuery at bootstrap.min.js:6