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?
magento2
error
javascript
Nikul
quelle
quelle
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..
quelle
map: { '*': {
wird es verwendet und manchmalpaths: {
...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>
quelle
Gehen Sie zu Ihrem Themenordner und suchen Sie die folgende Datei im Ordner Magento_Theme
und ersetzen
<script src="jquery.js" />
mit
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.
quelle
Uncaught Error: Bootstrap's JavaScript requires jQuery at bootstrap.min.js:6