admin管理员组

文章数量:1321070

Consider the piece of code below:

part of html file:

<body ng-app>
    <div ng-controller="MainCtrl">{{name}}</div>
</body>

part of js file:

function MainCtrl($scope) {
  $scope.name = "John";
}

I always put my controllers in some module, whose name I define in ng-app. How it works when I don't define any module ?

Consider the piece of code below:

part of html file:

<body ng-app>
    <div ng-controller="MainCtrl">{{name}}</div>
</body>

part of js file:

function MainCtrl($scope) {
  $scope.name = "John";
}

I always put my controllers in some module, whose name I define in ng-app. How it works when I don't define any module ?

Share Improve this question asked Jun 5, 2014 at 7:49 Adrian BaranAdrian Baran 8958 silver badges24 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 9

Angular, has this "auto-discover" feature, that allows it to look up controllers by their name if they are defined on the global scope.

This feature is mainly intended for quick demos/prototypes/proof-of-concept snippets and not real-world applications.


From Angular's Developer Guide:

NOTE: Although Angular allows you to create Controller functions in the global scope, this is not remended. In a real application you should use the .controller method of your Angular Module for your application [...]


Regarding the empty ngApp, if there is no name specified, it only means that there is no module to assign controllers, directives, services to, but other than that everything works fine.

本文标签: javascriptngApp without using any specific module nameStack Overflow