- Data binding
- Dependency Injection
- Directives
- AngularJS usa Two Way Data Binding
- Model -> View -> View
- Dependencias são injetadas automaticamente pelo angular
// otherApp is another angular module that was injected automatically
var app = angular.module("fooApp", ["otherApp"]);
// $scope is a angular service injected automatically aswell
app.controller("BarController", ["$scope", function ($scope) {
$scope.greet = function (greeting) {
console.log(greeting);
};
}]);
HTML as HTML extension.
São "templates" semanticos para declarar componenetes reusáveis.
- Controllers com muitas responsabilidades (SRP)
- Falta de modulos
- Nome de arquivos de acordo com o tipo (controllers.js, directives.js, services.js)
- Separar arquivos por comportamento (todo/todoController.js ...)
- Separar comportamentos diferentes em modulos
- ngModules
- Use generators