Saya mendapatkan kesalahan jenis JavaScript di Minicart, halaman Tampilan produk , dan halaman Checkout .
TypeError: $.widget is not a function
$.widget('mage.priceBox')
$.widget('mage.dataPost')
Bagaimana saya bisa memecahkan masalah ini?
magento2
error
javascript
Nikul
sumber
sumber
Jawaban:
Saya memiliki masalah yang sama menggunakan Porto Theme. Dalam kasus saya terkadang jQuery dikenali, terkadang tidak. Sayangnya, saya tidak mengerti penyebabnya, tetapi saya menemukan solusinya.
Singkatnya: Gabungkan semua file javascript.
Stores -> Configuration -> Advanced -> Developer -> JavaScript Settings
Mengaktifkan:
Tidak disarankan untuk menyebarkan file statis
bin/magento setup:static-content:deploy
Kosongkan cache di bawah
System -> Cache Management
Additional Cache Management
wilayah pilih TombolFlush CSS/Javascript Cache
Flush Magento Cache
sesudahnyaSekarang kosongkan Cache di Browser dan muat ulang.
Untuk mengembangkan solusi ini tidak memuaskan, tetapi setidaknya untuk produktif, menggunakannya harus menjadi solusi kerja yang baik, tanpa perilaku yang tidak terduga.
Semoga ini bisa membantu ..
sumber
map: { '*': {
- kadang digunakan, dan kadang-kadangpaths: {
...Saya memiliki masalah ini juga tetapi kemudian saya menemukan artikel ini: http://www.danjoseph.me/2016/09/16/magento-2-widget-not-function/
Dalam artikel itu ia menjelaskan bahwa jquery sedang dimuat untuk kedua kalinya pada halaman dan karenanya menimpa versi yang dimuat sebelumnya oleh magento. Bagi saya itu adalah skrip pemasaran yang juga memuat jquery karena suatu alasan. jQuery hanya boleh dimuat sekali di kepala oleh tag ini dan semua yang lain harus dihapus.
<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>
sumber
Buka folder tema Anda dan temukan file berikut di folder Magento_Theme
dan ganti
<script src="jquery.js" />
dengan
Pastikan Anda membersihkan cache dan menyegarkan halaman.
Saya memiliki masalah yang sama dan menyelesaikannya menggunakan metode di atas.
sumber
Uncaught Error: Bootstrap's JavaScript requires jQuery at bootstrap.min.js:6