Fonction non définie: une fonction JavaScript doit-elle être définie dans le même fichier?
-
30-10-2019 - |
Question
J'ai un fichier notifications.js
contenant un événement lié à un élément et à une fonction updateNotification()
. Cette fonction utilise jQuery pour mettre à jour certains éléments sur la page lorsqu'un objet JSON est passé comme paramètre.
Le problème:
J'essaie d'appeler cette fonction dans la page (via <script>
Tags), cependant, plutôt que de l'appeler, il casse la page. J'ai fait quelques creustes dans la console de développeur Chrome (pas sûr du nom), et une erreur est signalée:
/pleaseshare/views/install/:50 Uncaught ReferenceError:updateNotification is not defined
Cependant, lorsque je me pan dans la console, je peux clairement voir le fichier notifications.js
Inscrit sous les scripts, et la fonction y est définie. Si je définis la fonction dans la portée actuelle (par exemple, la ligne au-dessus de l'appel), cela fonctionne bien.
Ce que j'ai essayé
La fonction contient un javascript qui nécessite jQuery, donc j'ai tenté à la fois avec et sans l'enclure $(document).ready( function() {});
, aucun ne semblait avoir un effet.
Je suis assez perplexe.
Pour faire bonne mesure, voici un lien pour montrer la structure de mon javascript et HTML: http://snippi.com/s/znk6xe9
Toute aide à comprendre pourquoi cela se produit, ou des explications sur les raisons pour lesquelles les fonctions JavaScript ne peuvent pas être appelées Cross-File (bien que j'espère que ce n'est pas le cas), serait grandement appréciée;) !!
Pas de solution correcte