AngularJS – Modules

AngularJS Modules: Tổ chức và quản lý ứng dụng

Modules trong AngularJS là các khối xây dựng cơ bản của một ứng dụng. Chúng đóng vai trò là container cho các component như controllers, directives, services, filters và các module khác. Modules giúp bạn tổ chức và quản lý ứng dụng một cách hiệu quả.

Tạo một Module

Để tạo một module, bạn sử dụng hàm angular.module(). Hàm này nhận hai tham số: tên của module và một mảng chứa các dependency của module.

JavaScript

angular.module('myApp', []);

Thêm các Component vào Module

Bạn có thể thêm các component như controllers, directives, services và filters vào một module bằng cách sử dụng các phương thức của module.

JavaScript

angular.module('myApp', [])
  .controller('MyController', function($scope) {
    // ... logic của controller
  })
  .directive('myDirective', function() {
    // ... cấu hình directive
  })
  .service('myService', function() {
    // ... logic của service
  })
  .filter('myFilter', function() {
    // ... logic của filter
  });

Sử dụng Dependency Injection

AngularJS sử dụng dependency injection để cung cấp các đối tượng cần thiết cho các component. Khi bạn tạo một component, AngularJS sẽ tự động tiêm các dependency vào component đó.

JavaScript

angular.module('myApp', [])
  .controller('MyController', function($scope, $http) {
    // ... logic của controller
  });

Tạo các Module Con

Bạn có thể tạo các module con để tổ chức ứng dụng một cách tốt hơn. Một module con có thể phụ thuộc vào các module khác.

JavaScript

angular.module('myApp', []);

angular.module('myApp.features', ['myApp'])
  .controller('FeatureController', function($scope) {
    // ... logic của controller
  });

Các tính năng của Modules

  • Tổ chức ứng dụng: Chia ứng dụng thành các khối nhỏ hơn, dễ quản lý.
  • Dependency injection: Tự động cung cấp các đối tượng cần thiết cho các component.
  • Tạo các module con: Tổ chức ứng dụng thành các module con để tăng tính mô đun hóa.
  • Chia sẻ dữ liệu: Chia sẻ dữ liệu giữa các component thông qua các service.

Các ứng dụng của Modules

  • Tổ chức các ứng dụng lớn.
  • Tạo các thư viện tái sử dụng được.
  • Chia sẻ dữ liệu giữa các component.
  • Tăng tính bảo trì và khả năng mở rộng của ứng dụng.