Home  >  Article  >  Web Front-end  >  How to use AngularJS? Detailed introduction to the use of angularjs

How to use AngularJS? Detailed introduction to the use of angularjs

寻∝梦
寻∝梦Original
2018-09-08 16:16:191417browse

This article mainly talks about the usage details of angularjs. Some brief functional descriptions of angularjs are in it. Now let us take a look together

Recently, AngularJS was used in the project. I studied it during the weekend and shared it with everyone.

1. Brief introduction to AngularJS
The official documentation of AngularJS introduces it like this.
Client-side technology written entirely in JavaScript. Works with other time-honored Web technologies (HTML, CSS, and JavaScript) to make Web application development easier and faster than ever.
AngularJS makes developing web applications very simple, while also reducing the difficulty of building complex applications. It provides a series of advanced features that developers often use in modern web applications, such as:
Decoupling application logic, data models and views;
Ajax service
Dependency injection;
Browsing History (enables bookmarks and forward and back buttons to work like in normal web applications);
Testing;
More features.

2. Angularjs directory structure

The latest version is angular2.0, which is quite different from angular1.x. The version I use is version 1.3.

How to use AngularJS? Detailed introduction to the use of angularjs

When using basic functions, you only need to import the angular.js or angular.min.js file. Other js files are functions separated from angularjs, such as angular-route.js, which is a script file about routing. In version 1.2, there is no need to write a separate angular-route.js to use routing, but after version 1.3 , the use path needs to be imported separately angular-route.js


3. Angularjs basic use


to create a web project (using Hbuilder), and import the js file


How to use AngularJS? Detailed introduction to the use of angularjs

AngularJs’s main core features: MVC modular data binding, semantic tags (instructions), dependency injection, etc.


MVC
The core concept of MVC is to separate the code that manages data (model), the application logic code (controller), and the code that displays data (view).
In angular applications, the view is the DOM, the controller is JavaScript, and the model data is stored in the properties of the object.

I wrote a small example:

HTML code

How to use AngularJS? Detailed introduction to the use of angularjs##JS code

How to use AngularJS? Detailed introduction to the use of angularjsIn this case, ng-app is an angular directive (generally anything starting with ng- in angular is a directive), which is used to describe that the entire page is the owner of the angular application. {{msg}} It is used to output data on the page. You can also use ng-bind to bind data and output it on the page.


Two-way data bindingIn the traditional js framework, it mixes html code with data and sends it to the user When displayed, Angular can map certain parts of the UI to JavaScript properties, and then let them synchronize themselves. This is called data binding. Check out the following code:

How to use AngularJS? Detailed introduction to the use of angularjsI just added the sentence to the above code. Then I will find that when the content in the text box changes, the information in the view will change automatically without me adding any event operations in the code. This feature also applies to updates from the server. (If you want to see more, go to the PHP Chinese website

AngularJS Development Manual

to learn)

ModularizationIn the above code, I declared a global function demo1Controller in the js file. In js development, it is not recommended to define global functions or variables. It pollutes the global space. This kind of coding is not "elegant". In angular, I can use module (modularization to solve this problem)I modified the above code as follows:
Html code


How to use AngularJS? Detailed introduction to the use of angularjs
JS code

How to use AngularJS? Detailed introduction to the use of angularjsThe code execution result is unchanged, but I defined a module through angular.module. Angular.module("myapp",[ ]), the "[ ]" behind it represents whether the current myapp module is related to other modules. If it is not related, you don't need to write any code in [ ], but [ ] It must exist. If it doesn't exist, its meaning is different.

Note: Everything in angularjs starts with modules.


Dependency Injection
In the above code, everyone must have a question, that is, who created the $scope I used in the js code, and why did I Can I use it? In fact, it is all done by relying on dependency injection provided by angular. I have already been exposed to the concept of dependency injection when learning spring, but in front-end development, this is the first time I have used dependency injection.
AngularJS uses $injetor (injector service) to manage dependency query and instantiation.
In fact, $injetor is responsible for instantiating all components in AngularJS, including application modules, directives, and controllers. At runtime, $injetor will be responsible for instantiating any module when it starts and passing all the dependencies it needs. In development, what I learn most is to pass parameters where needed.
Injection in Angularjs is generally divided into three types:
Inferential injection

How to use AngularJS? Detailed introduction to the use of angularjs

Display injection (annotation injection)

How to use AngularJS? Detailed introduction to the use of angularjs

Inline injection (inline injection)

How to use AngularJS? Detailed introduction to the use of angularjs

This article ends here (if you want to see more, go to the PHP Chinese websiteAngularJS User Manual), if you have any questions, you can leave a message below.

The above is the detailed content of How to use AngularJS? Detailed introduction to the use of angularjs. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn