我们如何在正文末尾加载AngularJS而不是标题?

时间:2014-03-30 23:22:22

标签: javascript angularjs

默认情况下,AngularJS似乎不起作用,除非我把它放在<head>中。有没有办法把它放在<body>的末尾?

我的代码在页脚中看起来像这样:

$(document).ready(function() {
    var myApp = angular.module("myApp", []);

    myApp.bootstrap(document, ["myApp"]);

    myApp.controller("AppController",["$scope", "$http", function() {
        // so stuff with the $scope.
    }]);
});

编辑3/31/14: 基于ederollora的回答并做了一些研究,我发现在定义所有内容后,需要调用angular.bootstrap()。上面的代码变成了这样:

$(document).ready(function() {
    var myApp = angular.module("myApp", []);

    myApp.controller("AppController",["$scope", "$http", function() {
        // so stuff with the $scope.
    }]);

    myApp.bootstrap(document, ["myApp"]); // compile the app last
});

另外,为了将我的应用程序从jQuery迁移到Angular,我将document.ready调用更改为angular版本:

angular.element(document).ready(function() {
    var myApp = angular.module("myApp", []);

    myApp.controller("AppController",["$scope", "$http", function() {
        // so stuff with the $scope.
    }]);

    myApp.bootstrap(document, ["myApp"]); // compile the app last
});

在文档中没有明确规定在定义所有内容后必须调用angular.boostrap(),所以我去改进了文档。

1 个答案:

答案 0 :(得分:4)

来自AngularJS文档页面:

  

角度标记

     

此示例显示了将Angular与我们称之为自动初始化的推荐路径。

<!doctype html>
<html xmlns:ng="http://angularjs.org" ng-app>
  <body>
  ...
  <script src="angular.js">
  </body>
</html>
  
      
  1. 将脚本标记放在页面底部。在页面末尾放置脚本标记可以缩短应用程序加载时间,因为加载angular.js脚本不会阻止HTML加载。您可以从http://code.angularjs.org获取最新的位。请不要将您的生产代码链接到此网址,因为它会在您的网站上暴露出安全漏洞。对于实验开发,链接到我们的网站是好的。
  2.   

找到的信息为:here