Rumah > hujung hadapan web > tutorial js > Mengapa Fungsi Modul ES6 Saya yang Diimport Tidak Ditakrifkan dalam Peristiwa onclick?

Mengapa Fungsi Modul ES6 Saya yang Diimport Tidak Ditakrifkan dalam Peristiwa onclick?

DDD
Lepaskan: 2024-12-28 21:42:11
asal
590 orang telah melayarinya

Why Are My Imported ES6 Module Functions Undefined in onclick Events?

Modul ES6: Undefined Onclick Functions Post Importation

Dalam ES6, modul mewujudkan skop yang berbeza untuk mengelakkan konflik ruang nama. Apabila cuba untuk mengikat fungsi yang diimport daripada modul menggunakan onclick, anda mungkin menghadapi ralat "ReferenceError: hello is not definition". Artikel ini menyediakan penyelesaian kepada isu ini.

Penyelesaian 1: Menggunakan addEventListener

Untuk mengendalikan acara onclick bagi fungsi yang diimport dalam modul, gunakan addEventListener. Pertimbangkan contoh berikut:

<button type="button">
Salin selepas log masuk

Penyelesaian 2: Mendedahkan Fungsi kepada Objek Tetingkap (Tidak Disyorkan)

Walaupun tidak disyorkan kerana potensi konflik skop global, anda juga boleh mendedahkan fungsi yang diimport kepada objek tetingkap:

import {hello} from './test.js'
  
window.hello = hello
Salin selepas log masuk

Ini membolehkan anda untuk mengakses fungsi secara global dalam aplikasi anda.

Atas ialah kandungan terperinci Mengapa Fungsi Modul ES6 Saya yang Diimport Tidak Ditakrifkan dalam Peristiwa onclick?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan