


Detailed explanation of object properties returned by AngularJS directive_AngularJS
Written in front: Since the directive part is the top priority in angularjs, it will be explained in multiple chapters. This chapter mainly explains the simpler attributes in the object returned by directive
Directive() is used in angularjs to define instructions. This method receives two parameters: name (the name of the instruction), factory_function (this function defines all the behaviors of the instruction and returns an object)
Chestnut:
//index.js angular.module('myApp',[]); myApp.directive('myDirective',function() {return {};});
The returned object contains the following properties and methods:
1: restrict: String
This attribute is used to describe the form in which the myDirective directive is declared in the DOM (that is, where it should be used in HTML)
The optional values of this attribute are: E (element), A (attribute, default value), C (class name), M (comment), which can be used alone or in combination
I have seen a saying: If you want to customize an independent command function, that is, the command can complete a series of operations independently without relying on other elements, attributes, etc., then define the command as an element; if you want to use this command To extend the functionality of an existing directive, define it as an attribute. I don’t know if this understanding is reasonable, but it is indeed a good selection method standard that can be used for reference
2: priority: Number
This attribute is used to define the priority of the instruction (the default is 0, ngRepeat has the highest priority among all built-in instructions, which is 1000). The one with higher priority is executed first.
3: terminal: Boolean
This attribute is related to the priority attribute. It is used to determine whether to stop running instructions with a lower priority than this instruction on the current element, but the same priority will still be executed
Chestnut:
//index.js angular.module('myApp',[]) .directive('myDirective',function() { return { restrict: 'AE', priority: 1, template: '<div>hello world</div>' }; }) .directive('myDirective1',function() { return { restrict: 'AE', priority: 3, terminal: true }; })
<!-- index.html --> <div my-directive my-directive1></div>
If the myDirective1 directive is not defined, the browser will display hello world, but after adding the myDirective1 directive, setting its priority to be greater than myDirective, and setting the terminal attribute to true on myDirective1, it will stop. Execution of myDirective directive.
4: template: String/Function
This attribute defines a template (that is, the part using this instruction in the html file will replace the content of the template, so the template is mainly in html format)
Attributes come in two forms: a piece of html text, and a function that returns a template string, and the function receives two parameters: tElement, tAttrs
5: templateUrl: String/Function
When there is a lot of template content, nesting it directly in the template will appear redundant. You can store the template code in a separate file. In this case, you will need to import the file. TemplateUrl can do this
Attributes also come in two forms: a string representing the path of an external html file, and a function that returns a string of the path to an external html file. This function receives two parameters: tElement, tAttrs
6: replace: Boolean
The default value of this attribute is false, indicating whether the template will be inserted as a child element into the element that calls this directive, or overwrite and replace the element that calls this directive.
Chestnut:
//index.js angular.module('myApp',[]) .directive('myDirective',function() { return { restrict: 'A', template: '<div>hello world</div>', replace: true/false }; })
<!-- index.html --> <my-directive></my-directive>
When repalce is false, the browser source code is rendered as
When true, it will appear as
7: transclude: Boolean
Chestnut:
<!-- index.html --> <div my-directive>world</div>
Like this example, if there is content inside the instruction, usually the template will directly overwrite and replace the content, but now I want to keep it, and this is where transclude comes in handy
//index.js angular.module('myApp',[]) .dirctive('myDirective',function() { return { restrict: 'EA', transclude: true, template: '<div>hello <span ng-transclude></span></div>' }; })
The above js code will embed the world contained in the html file directive into the span element in the template. Note that the span element adds the ng-transclude built-in directive attribute (this is very important)
In short, the purpose of this attribute is to tell the angularjs compiler to put the content it gets from the DOM element where it finds the ng-transclude directive.
The above is the entire content of this article, I hope it will be helpful to everyone's study.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Javascript is a very unique language. It is unique in terms of the organization of the code, the programming paradigm of the code, and the object-oriented theory. The issue of whether Javascript is an object-oriented language that has been debated for a long time has obviously been There is an answer. However, even though Javascript has been dominant for twenty years, if you want to understand popular frameworks such as jQuery, Angularjs, and even React, just watch the "Black Horse Cloud Classroom JavaScript Advanced Framework Design Video Tutorial".

In today's information age, websites have become an important tool for people to obtain information and communicate. A responsive website can adapt to various devices and provide users with a high-quality experience, which has become a hot spot in modern website development. This article will introduce how to use PHP and AngularJS to build a responsive website to provide a high-quality user experience. Introduction to PHP PHP is an open source server-side programming language ideal for web development. PHP has many advantages, such as easy to learn, cross-platform, rich tool library, development efficiency

With the continuous development of the Internet, Web applications have become an important part of enterprise information construction and a necessary means of modernization work. In order to make web applications easy to develop, maintain and expand, developers need to choose a technical framework and programming language that suits their development needs. PHP and AngularJS are two very popular web development technologies. They are server-side and client-side solutions respectively. Their combined use can greatly improve the development efficiency and user experience of web applications. Advantages of PHPPHP

With the rapid development of Web technology, Single Page Web Application (SinglePage Application, SPA) has become an increasingly popular Web application model. Compared with traditional multi-page web applications, the biggest advantage of SPA is that the user experience is smoother, and the computing pressure on the server is also greatly reduced. In this article, we will introduce how to build a simple SPA using Flask and AngularJS. Flask is a lightweight Py

With the popularity of web applications, the front-end framework AngularJS has become increasingly popular. AngularJS is a JavaScript framework developed by Google that helps you build web applications with dynamic web application capabilities. On the other hand, for backend programming, PHP is a very popular programming language. If you are using PHP for server-side programming, then using PHP with AngularJS will bring more dynamic effects to your website.

With the popularity of the Internet, more and more people are using the network to transfer and share files. However, due to various reasons, using traditional methods such as FTP for file management cannot meet the needs of modern users. Therefore, establishing an easy-to-use, efficient, and secure online file management platform has become a trend. The online file management platform introduced in this article is based on PHP and AngularJS. It can easily perform file upload, download, edit, delete and other operations, and provides a series of powerful functions, such as file sharing, search,

The content of this article is about the basic introduction to AngularJS. It has certain reference value. Now I share it with you. Friends in need can refer to it.

With the popularity and development of the Internet, front-end development has become more and more important. As front-end developers, we need to understand and master various development tools and technologies. Among them, PHP and AngularJS are two very useful and popular tools. In this article, we will explain how to use these two tools for front-end development. 1. Introduction to PHP PHP is a popular open source server-side scripting language. It is suitable for web development and can run on web servers and various operating systems. The advantages of PHP are simplicity, speed and convenience
