Maison > Questions et réponses > le corps du texte
<p ng-include="'project_index.jsp'">
project_index.jsp :
<script type="text/javascript" ng-src='{{generateURL("/scripts/tab.js")}}'></script>
L'URL générée est correcte et accessible dans le navigateur, mais j'ai vu l'enregistrement de la demande et le js n'a pas été chargé. Par conséquent, le contenu de js ne peut pas être exécuté. Quel est le problème avec mon approche ? Merci pour la réponse~
黄舟2017-05-15 16:52:36
Trouvé sur la pile. Un test personnel est utile.
(function (ng) {
'use strict';
var app = ng.module('ngLoadScript', []);
app.directive('script', function() {
return {
restrict: 'E',
scope: false,
link: function(scope, elem, attr)
{
if (attr.type==='text/javascript-lazy')
{
var s = document.createElement("script");
s.type = "text/javascript";
var src = elem.attr('src');
if(src!==undefined)
{
s.src = src;
}
else
{
var code = elem.text();
s.text = code;
}
document.head.appendChild(s);
elem.remove();
}
}
};
});
}(angular));
Écrivez le code ci-dessus dans un fichier js, puis injectez ce module ngLoadScript dans votre application actuelle, puis utilisez type="text/javascript-lazy" dans la balise <script>
Ce module angulaire a été créé par @subudeepak(https://github.com/subudeepak) sur la base du code publié par @endorama (https://github.com/endorama)
* (basé sur le code
* posté par @olostan (https://github.com/olostan) )