我需要为我的 html 页面定义仅当变量 $scope.jsallowed
设置为 true
时加载 javascript 外部文件,所以我尝试了这段代码: (我的页面是基于 AngularJS 的)
在 HTML 中:
<script src="assets/js/slider.min.js" data-ng-if="jsallowed"></script>
在 JS 中:
$scope.jsallowed = false;
(请注意,我设置了应用程序和 Controller ......但我只是在此处包含了您需要的代码。) 但问题是,我的 javascript 文件尚未加载。虽然它不应该。在将 jsallowed 变量设置为 true 之前,如何改进我的代码以防止加载它?
最佳答案
不幸的是,data-ng-if="jsallowed"无法满足您的需求。您可以做的是直接在您的 JavaScript 文件中异步加载脚本,如下所示:
<script>
var resource = document.createElement('script');
resource.src = "assets/js/slider.min.js";
var script = document.getElementsByTagName('script')[0];
script.parentNode.insertBefore(resource, script);
</script>
关于javascript - 如果在 AngularJS 中允许,则包含 javascript 外部文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39445555/