Maison > interface Web > js tutoriel > Pourquoi mes fonctions de module ES6 importées ne sont-elles pas définies dans les événements onclick ?

Pourquoi mes fonctions de module ES6 importées ne sont-elles pas définies dans les événements onclick ?

DDD
Libérer: 2024-12-28 21:42:11
original
594 Les gens l'ont consulté

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

Modules ES6 : fonctions Onclick non définies après l'importation

Dans ES6, les modules établissent une portée distincte pour éviter les conflits d'espace de noms. Lorsque vous tentez de lier des fonctions importées d'un module à l'aide de onclick, vous pouvez rencontrer une erreur « ReferenceError : hello n'est pas défini ». Cet article fournit des solutions à ce problème.

Solution 1 : Utilisation de addEventListener

Pour gérer les événements onclick pour les fonctions importées dans les modules, utilisez addEventListener. Prenons l'exemple suivant :

<button type="button">
Copier après la connexion

Solution 2 : exposition des fonctions à l'objet Window (non recommandé)

Bien que cela ne soit pas recommandé en raison de conflits de portée globale potentiels, vous peut également exposer la fonction importée à l'objet window :

import {hello} from './test.js'
  
window.hello = hello
Copier après la connexion

Cela vous permet d'accéder à la fonction globalement au sein de votre candidature.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal