Je dois charger un fichier JavaScript (plug-in jQuery) dans un fichier HTML. Mais cela ne semble pas fonctionner. Ceci est exécuté sur un serveur CLI-Angulaire (serveur) Voici le code HTML.
Test Loading...
Je reçois cette erreur:
A refusé d’exécuter le script à partir de ‘ http: // localhost: 8080 / test.js ‘ car son type MIME (‘text / html‘) n’est pas exécutable et la vérification de type MIME ssortingcte est activée.
J’ai trouvé cette question , où la solution semble corriger l’atsortingbut type
, mais cela ne m’a pas résolu le problème. J’ai essayé text/javascript
et application/javascript
.
Que dois-je faire ici?
EDIT: la console réseau affiche une erreur 404 pour le script. Dit que la demande n’a pas de données de réponse disponibles. Le type de contenu dit text/html; charset=utf-8
text/html; charset=utf-8
NOTE: À l’origine, j’avais posté ceci comme un exemple plus minimal que mon code réel, car je ne pensais pas qu’il s’agissait d’un serveur CLI angular. C’est peut-être le cas, alors j’ai restauré mon exemple avec le code que j’ai.
Essayez de placer votre script js dans le dossier src/assets
. Ensuite, il devrait être servi avec le type mime correct par le serveur de développement
Puis référence comme ci-dessous
Plutôt que d’inclure jquery et votre script dans index.html, vous pouvez append les fichiers aux propriétés “scripts” de angular-cli.json
(ou angular.json
si vous utilisez angular 6)
"scripts": [ //include jQuery here, eg if installed with npm "../node_modules/jquery/dist/jquery.min.js" , "assets/scripts/test.js" ]
Remarque : N’oubliez pas de redémarrer ng serve
après avoir modifié les .angular-cli.json
ou angular.json
.
J’ai rencontré le même problème
dans le fichier index.html
// remove dot (.) and your app will execute scripts