模組

模組是應用程式各個部分的容器 - 控制器,服務,過濾器,指令等。

為什麼使用模組
大多數應用程式都有一個主要方法,可以例項化並將應用程式的不同部分連線在一起。
Angular 應用程式沒有主要方法。
但是在 AngularJs 中,宣告性過程很容易理解,並且可以將程式碼打包為可重用模組。
模組可以按任何順序載入,因為模組會延遲執行。

宣告一個模組

var app = angular.module('myApp', []);
// Empty array is list of modules myApp is depends on.
// if there are any required dependancies, 
// then you can add in module, Like ['ngAnimate']

app.controller('myController', function() {

  // write your business logic here
});

模組載入和依賴關係

  1. 配置塊: - 在提供者和配置階段執行。

    angular.module('myModule', []).
    config(function(injectables) {
      // here you can only inject providers in to config blocks.
    });
    
  2. 執行塊: - 在建立注入器後執行並用於啟動應用程式。

    angular.module('myModule', []).
    run(function(injectables) {
      // here you can only inject instances in to config blocks.
    });