Angular cung cấp một nền tảng phát triển rất phong phú cho các ứng dụng web hiện đại. Sự phong phú đó kéo dài vào mẫu cũng như nó vào các khu vực mã JavaScript. Một tính năng rất hữu ích nhưng có khả năng tối nghĩa của các mẫu góc là biến mẫu; Đôi khi & nbsp; Cũng được gọi là biến tham chiếu mẫu hoặc tham chiếu cục bộ.Template Variable; sometimes also referred to as Template Reference Variables or Local References.
Biến mẫu là gì?
Một biến mẫu là một biến được tạo và xác định một thành phần hoặc phần tử bên trong chính mẫu. Nói cách khác, một tham chiếu cục bộ đến một số yếu tố trong mẫu của bạn mà bạn muốn tham khảo, chuyển xung quanh, chuyển lại hoặc tham khảo từ thành phần TypeScript hoặc gọi mọi thứ trên.local reference to some element in your template that you wish to refer to, pass around, pass back to or reference from the TypeScript component or call things on.
Các biến mẫu có thể đề cập đến bất kỳ một trong những điều sau đây trong một mẫu:
- Các yếu tố DOM
- Chỉ thị
- Các yếu tố
- Templaterefs
- Các thành phần web
Xác định một biến mẫu
Tạo một biến mẫu rất dễ dàng với góc. Chỉ cần thêm một định danh duy nhất vào bất cứ điều gì bạn muốn tham khảo, như vậy:
Tham chiếu trong ví dụ ở đây được xác định bởi thuộc tính #Email được thêm vào phần tử. Tên của tài liệu tham khảo chỉ đơn giản là email, vì vậy, khi thực sự tham chiếu biến, hãy bỏ băm #.#email attribute added to the element. The name of the reference is simply email so, when actually referencing the variable, drop the hash #.
Đó là tất cả những gì bạn cần để xác định một biến mẫu. Trên thực tế, bạn có thể đã xác định chúng trong một số mẫu của bạn. Ví dụ: nếu bạn sử dụng các biểu mẫu mẫu, khi bạn liên kết biểu mẫu thành NGform, bạn thực tế đang xác định biến mẫu cho biểu mẫu:ngForm you are in fact defining a template variable for the form:
Biểu mẫu trên được tham chiếu bởi biểu mẫu định danh và tham chiếu đó có thể được sử dụng trong mẫu hoặc được truyền đến các phương thức trên thành phần.form and that reference may be used in the template or passed to methods on the component.
Chỉ thị
Các yếu tốngForm directive. To define a template variable for a directive, simply assign the variable to the directive.
Templaterefs
Các thành phần web or , those directives and elements create a child scope. Template variables defined on or in such child scopes are only accessible within those scopes.
Xác định một biến mẫu
Tạo một biến mẫu rất dễ dàng với góc. Chỉ cần thêm một định danh duy nhất vào bất cứ điều gì bạn muốn tham khảo, như vậy:
Tham chiếu trong ví dụ ở đây được xác định bởi thuộc tính #Email được thêm vào phần tử. Tên của tài liệu tham khảo chỉ đơn giản là email, vì vậy, khi thực sự tham chiếu biến, hãy bỏ băm #.
Đó là tất cả những gì bạn cần để xác định một biến mẫu. Trên thực tế, bạn có thể đã xác định chúng trong một số mẫu của bạn. Ví dụ: nếu bạn sử dụng các biểu mẫu mẫu, khi bạn liên kết biểu mẫu thành NGform, bạn thực tế đang xác định biến mẫu cho biểu mẫu:FormGroup on the ngForm directive that is passed to the submit[] method. The example below destructures the NgForm.form property from the passed form directive to get ahold of the actual form group:
Biểu mẫu trên được tham chiếu bởi biểu mẫu định danh và tham chiếu đó có thể được sử dụng trong mẫu hoặc được truyền đến các phương thức trên thành phần.
Các yếu tố dễ dàng xác định một tham chiếu biến mẫu cho. Chỉ thị ít rõ ràng hơn một chút; Nhưng bạn đã thấy làm thế nào. Ví dụ đầu vào là xác định một tham chiếu trên một phần tử. Tuy nhiên, ví dụ hình thức thực sự đang xác định một tham chiếu của Chỉ thị NGform. Để xác định một biến mẫu cho một chỉ thị, chỉ cần gán biến cho Chỉ thị.
Phạm vi biến mẫuViewChild decorator. Within a component, properties so decorated may access one of a number of types of view children identified in one of many ways. Elements, directives and child components may all be referenced directly via template variables within the component.
Các biến mẫu có sẵn trong mẫu mà chúng được xác định. Lưu ý rằng nếu bạn sử dụng bất kỳ chỉ thị cấu trúc hoặc sử dụng hoặc, các chỉ thị và yếu tố đó tạo ra phạm vi trẻ em. Các biến mẫu được xác định trên hoặc trong phạm vi con như vậy chỉ có thể truy cập trong các phạm vi đó.
Sử dụng một biến mẫu@ViewChild['child'] in the component:
Để sử dụng một biến mẫu, sử dụng tên định danh. Trong trường hợp mẫu ví dụ trên; Nếu chúng tôi gửi biểu mẫu đó, chúng tôi sẽ chuyển biểu mẫu cho phương thức gửi của chúng tôi như vậy:static in that they do not change throughout the lifetime of the component. In some cases, you may need to update the component reference to a view child. In that case you should set static to false which will ensure the reference is updated in the event that the content changes. This should not generally be required for template references but there are edge cases.
Đây là mẫu truy cập cục bộ vào một biến mẫu. Trong trường hợp này, tham chiếu được chuyển vào thành phần thông qua một phương thức.
Mã trong thành phần sẽ truy cập vào nhóm formgroup trên Chỉ thị NGform được chuyển đến phương thức Substem []. Ví dụ dưới đây phá hủy thuộc tính NGform.Form từ Chỉ thị mẫu được thông qua để có được nhóm thực tế của nhóm mẫu thực tế:@ViewChild to access something from your template in the component, you may also read alternative forms or related references. For example, to get a reference to the HTML element instead of the component:
Các biến mẫu cũng có thể được sử dụng nghiêm ngặt trong mẫu. Xem xét ví dụ đầu vào và cần hiển thị các lỗi xác thực ở dạng mẫu:
Xem trẻ em
Một cách khác để các biến mẫu tham chiếu là thông qua bộ trang trí viewchild. Trong một thành phần, các thuộc tính được trang trí có thể truy cập một trong một số loại trẻ em xem được xác định theo một trong nhiều cách. Các yếu tố, chỉ thị và thành phần trẻ em đều có thể được tham chiếu trực tiếp thông qua các biến mẫu trong thành phần. to define child templates that may be referenced elsewhere in the component's template, passed to child components or referenced in the component code.
Để truy cập một thành phần con cụ thể của một loại cụ thể, hãy xác định một biến cho nó trong mẫu:
Với thành phần sau để hỗ trợ:
Đại diện thay thế
Một trường hợp sử dụng tuyệt vời khác cho các mẫu và tham chiếu mẫu là chứa các biểu diễn hoặc nội dung thay thế được hiển thị trong một số trường hợp nhất định. Một ví dụ phổ biến là khi tải dữ liệu và hiển thị thông báo trong khi dữ liệu đang tải:
Bạn cũng có thể làm tổ cấu trúc container/mẫu như vậy. Một mẫu phổ biến khác là hiển thị một thông báo khác khi sau khi tải hoàn tất và bạn vẫn không có dữ liệu [tức là không tìm thấy mục nào]:
Đơn giản nhưng mạnh mẽ
Các biến mẫu là một công cụ rất đơn giản trong các mẫu góc, tuy nhiên, chúng cũng cung cấp quyền truy cập vào một số tính năng tiên tiến và mạnh mẽ nhất của nó. Chúng mang lại một mức độ tinh khiết và đơn giản của mẫu, cho phép nhà phát triển tránh tạo ra các thuộc tính và phương thức không cần thiết trong thành phần của chúng. Thay vào đó, trực tiếp truy cập chức năng hoặc dữ liệu có liên quan hoàn toàn từ mẫu.
Khi kết hợp với @ViewChild và Templateref, chúng mang lại một sức mạnh đáng kể cho bảng. Chúng có thể cho phép thiết kế mẫu sạch hơn và tổ chức mẫu tốt hơn nơi nội dung có thể hoán đổi có thể được gói gọn. Hơn nữa, các mẫu có thể được điều khiển theo cách năng động hơn với các tài liệu tham khảo mẫu.@ViewChild and TemplateRef, they bring a significant amount of power to the table. They can allow cleaner template design and better template organization where interchangeable content can be encapsulated. Further, templates can be driven in a more dynamic manner with template references.