AngularJS tạo điều kiện cho bạn mở rộng HTML với các thuộc tính mới. Các thuộc tính này được gọi là chỉ thị.
Có một bộ chỉ thị tích hợp trong AngularJS cung cấp chức năng cho các ứng dụng của bạn. Bạn cũng có thể xác định các chỉ thị của riêng mình.
Các bài viết liên quan:
Directives là các thuộc tính đặc biệt bắt đầu bằng tiền tố ng-. Sau đây là các chỉ thị phổ biến nhất:
- ng-app: Chỉ thị này khởi động Ứng dụng AngularJS.
- ng-init: Chỉ thị này khởi tạo dữ liệu ứng dụng.
- ng-model: Chỉ thị này xác định mô hình có thể thay đổi được sử dụng trong AngularJS.
- ng-repeat: Lệnh này lặp lại các phần tử html cho mỗi mục trong một bộ sưu tập.
- Chỉ thị ng-app
Chỉ thị ng-app xác định phần tử gốc. Nó khởi động Ứng dụng AngularJS và tự động khởi tạo hoặc khởi động ứng dụng khi trang web chứa Ứng dụng AngularJS được tải. Nó cũng được sử dụng để tải các mô-đun AngularJS khác nhau trong Ứng dụng AngularJS.
Xem ví dụ này:
Trong ví dụ sau, chúng tôi đã xác định một ứng dụng AngularJS mặc định bằng cách sử dụng thuộc tính ng-app của một phần tử div.
< div ng-app = "" > ... </ div >
- Chỉ thị ng-model:
Chỉ thị ng-model xác định mô hình / biến được sử dụng trong Ứng dụng AngularJS.
Trong ví dụ sau, chúng tôi đã xác định một mô hình có tên “name”.
< div ng-app = "" > ... < p > Nhập Tên của bạn: < input type = "text" ng-model = "name" > </ p > </ div >
- Chỉ thị ng-repeat
Chỉ thị ng-repeat lặp lại các phần tử html cho mỗi mục trong một bộ sưu tập. Trong ví dụ sau, chúng tôi đã lặp lại một loạt các quốc gia.
< div ng-app = "" > ... < p > Danh sách ngôn ngữ của các quốc gia: </ p > < ol > < li ng-repeat = "quốc gia trong các quốc gia" > {{'Quốc gia:' + country.name + ', Ngôn ngữ:' + country.locale}} </ li > </ ol > </div>
Ví dụ về chỉ thị AngularJS
Hãy lấy một ví dụ để sử dụng tất cả các lệnh đã thảo luận ở trên:
<!DOCTYPE html> <html> <head> <title>AngularJS Directives</title> </head> <body> <h1>Sample Application</h1> <div ng-app = "" ng-init = "countries = [{locale:'en-IND',name:'India'}, {locale:'en-PAK',name:'Pakistan'}, {locale:'en-AUS',name:'Australia'}]"> <p>Nhập tên của bạn: <input type = "text" ng-model = "name"></p> <p>Xin chào <span ng-bind = "name"></span>!</p> <p>Danh sách ngôn ngữ của các quốc gia:</p> <ol> <li ng-repeat = "country in countries"> {{ 'Country: ' + country.name + ', Locale: ' + country.locale }} </li> </ol> </div> <script src = "http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> </body> </html>
Danh sách chỉ thị AngularJS
Các chỉ thị AnglarJS được sử dụng để thêm chức năng vào ứng dụng của bạn. Bạn cũng có thể thêm các chỉ thị của riêng mình cho các ứng dụng của bạn.
Sau đây là danh sách các chỉ thị AngularJS:
Chỉ thị | Sự miêu tả |
ng-app | Nó xác định phần tử gốc của một ứng dụng. |
ng-bind | Nó liên kết nội dung của một phần tử html với dữ liệu ứng dụng. |
ng-bind-html | Nó liên kết HTML bên trong của một phần tử HTML với dữ liệu ứng dụng và cũng loại bỏ mã nguy hiểm khỏi chuỗi html. |
ng-bind-template | Nó chỉ định rằng nội dung văn bản nên được thay thế bằng một mẫu. |
ng-blur | Nó chỉ định một hành vi trên các sự kiện mờ. |
ng-change | Nó chỉ định một expressions để đánh giá khi người dùng thay đổi nội dung. |
ng-checked | Nó chỉ định xem một phần tử có được chọn hay không. |
ng-class | Nó chỉ định các lớp css trên các phần tử html. |
ng-class-even | Nó giống như ng-class, nhưng sẽ chỉ có hiệu lực trên các hàng chẵn. |
ng-class-odd | Nó giống như ng-class, nhưng sẽ chỉ có hiệu lực trên các hàng lẻ. |
ng-click | Nó chỉ định một expressions để đánh giá khi một phần tử đang được nhấp vào. |
ng-cloak | Nó ngăn chặn hiện tượng nhấp nháy khi ứng dụng của bạn đang được tải. |
ng-controller | Nó xác định đối tượng điều khiển cho một ứng dụng. |
ng-copy | Nó chỉ định một hành vi trên các sự kiện sao chép. |
ng-csp | Nó thay đổi chính sách bảo mật nội dung. |
ng-cut | Nó chỉ định một hành vi trên các sự kiện cắt. |
ng-dblclick | Nó chỉ định một hành vi trên các sự kiện nhấp đúp. |
ng-focus | Nó chỉ định một hành vi trên các sự kiện tiêu điểm. |
ng-hide | Nó ẩn hoặc hiển thị các phần tử html. |
ng-href | Nó chỉ định một URL cho phần tử <a>. |
ng-if | Nó loại bỏ phần tử html nếu một điều kiện là sai. |
ng-include | Nó bao gồm html trong một ứng dụng. |
ng-init | Nó xác định các giá trị ban đầu cho một ứng dụng. |
ng-jq | Nó chỉ định rằng ứng dụng phải sử dụng một thư viện, như jQuery. |
ng-keydown | Nó chỉ định một hành vi trên các sự kiện keydown. |
ng-keypress | Nó chỉ định một hành vi trên các sự kiện nhấn phím. |
ng-keyup | Nó chỉ định một hành vi trên các sự kiện keyup. |
ng-list | Nó chuyển đổi văn bản thành một danh sách (mảng). |
ng-open | Nó chỉ định thuộc tính mở của một phần tử. |
ng-options | Nó chỉ định <options> trong danh sách <select>. |
ng-paste | Nó chỉ định một hành vi trên các sự kiện dán. |
ng-pluralize | Nó chỉ định một thông báo để hiển thị theo các quy tắc bản địa hóa của en-us. |
ng-readonly | Nó chỉ định thuộc tính chỉ đọc của một phần tử. |
ng-required | Nó chỉ định thuộc tính bắt buộc của một phần tử. |
ng-selected | Nó chỉ định thuộc tính đã chọn của một phần tử. |
ng-show | Nó hiển thị hoặc ẩn các phần tử html. |
ng-src | Nó chỉ định thuộc tính src cho phần tử <img>. |
ng-srcset | Nó chỉ định thuộc tính srcset cho phần tử <img>. |
ng-style | Nó chỉ định thuộc tính style cho một phần tử. |
ng-submit | Nó chỉ định các expressions để chạy trên các sự kiện gửi trực tiếp. |
ng-switch | Nó chỉ định một điều kiện sẽ được sử dụng để hiển thị / ẩn các phần tử con. |
ng-transclude | Nó chỉ định một điểm để chèn các phần tử đã loại trừ. |
ng-value | Nó chỉ định giá trị của một phần tử đầu vào. |
ng-disabled | Nó chỉ định xem một phần tử có bị vô hiệu hóa hay không. |
ng-form | Nó chỉ định một biểu mẫu html để kế thừa các điều khiển từ đó. |
ng-model | Nó liên kết giá trị của các điều khiển html với dữ liệu ứng dụng. |
ng-model-options | Nó chỉ định cách các cập nhật trong mô hình được thực hiện. |
ng-mousedown | Nó chỉ định một hành vi trên các sự kiện mousedown. |
ng-mouseenter | Nó chỉ định một hành vi trên các sự kiện của mouseenter. |
ng-mouseleave | Nó chỉ định một hành vi trên các sự kiện mouseleave. |
ng-mousemove | Nó chỉ định một hành vi trên các sự kiện di chuyển chuột. |
ng-mouseover | Nó chỉ định một hành vi trên các sự kiện di chuột qua. |
ng-mouseup | Nó chỉ định một hành vi trên các sự kiện mouseup. |
ng-non-bindable | Nó chỉ định rằng không có ràng buộc dữ liệu nào có thể xảy ra trong phần tử này hoặc đó là phần tử con. |
ng-repeat | Nó xác định một mẫu cho mỗi dữ liệu trong một bộ sưu tập. |
Cách thêm chỉ thị
Xem ví dụ này:
<!DOCTYPE html> <html> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> <body> <div ng-app="myApp" w3-test-directive></div> <script> var app = angular.module("myApp", []); app.directive("w3TestDirective", function() { return { template : "Đây là một hàm tạo chỉ thị" }; }); </script> </body> </html>