Home >Web Front-end >JS Tutorial >What are the advantages and disadvantages of AngularJS? Introduction to the advantages and disadvantages of angularjs
This article mainly introduces the advantages and disadvantages of angularjs, as well as the development of angularjs. Let us take a look at this article now
In the field of web development, we generally use HTML as the declarative language for front-end page elements , using CSS technology as the description language for display styles, and JavaScript as the imperative language for business processing interaction. When we build very complex web applications, pure and limited HTML is very insufficient. Javascript itself will become difficult to maintain and manage as the amount of project code expands, and the development schedule and cost will also become difficult to control. At this time, we generally use some class libraries (such as jQuery, Dojo, etc.) or frameworks (such as Backbone, Ember, ExtJS, etc.) to improve development efficiency, thereby reducing the project duration and cost, and also facilitating subsequent maintenance and management.
AngularJS is not only a front-end development framework with advanced concepts, but also an end-to-end solution. AngularJS follows the MVC pattern in architectural design and advocates loose coupling of presentation, data and logic processing components (similar to Flex and WPF). AngularJS achieves a natural extension of traditional HTML through instruction technology, and realizes two-way automatic synchronization of data model and display view through compilation technology, thereby eliminating tedious and complex DOM operations in front-end development (think of those piece-by-piece selectors). Finally, the modular design solves the problems of JS code management, maintenance and on-demand loading, freeing up the productivity of front-end programmers (and back-end programmers) to complete front-end development tasks. And this decoupling itself also provides good support for front-end automated testing technology.
1. The template is powerful and rich in functions, and it is declarative and comes with a wealth of Angular instructions;
2. It is a relatively complete front-end MVVM framework, including templates, two-way data binding, routing, modularization, services, filters, dependency injection and all other functions;
3. Customize Directive, which is more flexible than jQuery plug-ins, but requires an in-depth understanding of some features of Directive. Simple encapsulation is easy, but if it is more complicated, the official does not provide detailed introduction documents. We can find some things we need by reading the source code. , such as: using $parse in directive;
4. ng modularization boldly introduces some things from Java (dependency injection), which can easily write reusable code. For agile development It is very helpful to the team. From the launch of our project to the present, the UI has changed a lot. We are iterating the product through exploration, but the js code has basically rarely changed.
5. Supplement: Angular supports unit testing and e2e-testing.
Note: The best thing is the two-way binding of angularjs and its use of the template layer.
1. The verification function error message display is relatively weak and requires writing a lot of template tags;
2. There can only be one ngView, and multiple views cannot be nested. Although there is angular-ui/ui-router to solve the problem, ui-router is not very flexible in controlling URLs and must be nested;
3. For particularly complex application scenarios, there seems to be some performance issues, especially when using the Chrome browser under Windows. I don’t know if it is a memory leak or some other problem. I have not found a good solution. The strange thing is that it works under IE10. On the contrary, it will be very fast, and this is still under observation;
4. This time the upgrade from 1.0. Compatibility BUG, for specific details, please refer to the official document AngularJS. The corresponding Chinese version: Angular 1.0 to 1.2 Migration Guide. Now angularjs4 is out, but more people use angularjs2;
5. ng recommends that there be no DOM manipulation code in the controller. For the use of some jQuery plug-ins, if you want not to destroy the cleanliness of the code, you need to write some directives to encapsulate the plug-ins. However, there are many plug-in versions now. Angular is supported, and it is best to combine it with the cordova plug-in for hybrid development;
6. Angular is too cumbersome.
Note: The most unpleasant thing is the routing mechanism of AngularJS, which is prone to problems.
This article ends here (if you want to see more, go to the PHP Chinese website AngularJS User Manual to learn). If you have any questions, you can leave a message below. Ask questions.
The above is the detailed content of What are the advantages and disadvantages of AngularJS? Introduction to the advantages and disadvantages of angularjs. For more information, please follow other related articles on the PHP Chinese website!