Từ AngularJS 1.4 đến AngularJS 2.0
1.AngularJS 1.4
Trước khi chúng ta bắt đầu nói chuyện về tương lai của AngularJS, chúng ta hãy dành một phút để nhìn vào các phiên bản hiện tại. Hiện tại,AngularJS 1.4 là phiên bản tốt nhất của Angular Team và được Google khuyên dùng . Nó chứa đầy đủ các bản vá lỗi, nâng cấp tính năng và cải tiến hiệu suất. Nếu bạn đang sử dụng Angular, bạn nên nâng cấp lên 1.4 còn nếu bạn đang bắt đầu một dự án mới với Angular, đây là phiên bản bạn sẽ muốn được sử dụng.
Nếu bạn muốn tìm hiểu thêm về nó bạn có thể ghé qua trang chủ của
AngularJS.
2. Tạo sao lại có sự ra đời của AngularJS 2.0
Angular TEAM giới thiệu suy nghĩ của mình và công việc ban đầu cho AngularJS 2.0 tại ng-conf Europe vào cuối tháng Mười năm 2014. Các động lực cho AngularJS 2.0 là:
- Tiêu chuẩn Web - Một số tiêu chuẩn, cụ thể Web Components, đã phát triển kể từ AngularJS 1.x và cung cấp nền tảng tốt /các tiêu chuẩn cụ thể cho giải pháp triển khai AngularJS hiện có.
- ES6 JavaScript - Nhiều phần của tiêu chuẩn ES6 đã được hoàn thiện và các tiêu chuẩn sẽ được thông qua vào giữa năm 2015. ES6 cung cấp các tính năng có thể thay thế việc triển khai Angular hiện có và cải thiện hiệu suất.
- Performance - AngularJS 1.x, đặc biệt là kiến trúc digest có thể được cải thiện bằng cách sử dụng phương pháp tiếp cận mới hơn và ngôn ngữ ES6 tính năng.
- Mô hình nhận thức đơn giản - dễ dàng hơn để tìm hiểu, phát triển, thử nghiệm ...
- Trình duyệt web tốt hơn - trừ khi tiến hóa góc và thúc đẩy mới khả năng có sẵn trong các trình duyệt web ngày càng xanh nó sẽ được tổ chức lại theo yêu cầu của di sản và nhanh chóng đến không liên quan.
Những gì thay đổi?
AngularJS 2.0 sẽ không còn sử dụng hoặc thay đổi đáng kể nhiều thứ ở Angular 1.x :
- Controllers - Kiến trúc MVC truyền thống sẽ được thay thế với một kiến trúc các component linh hoạt. Controllers là không còn cần thiết và thay thế bằng một component với component chuyên dụng được điều khiển.
- Directives - Directive Definition Object hiện tại sẽ được gỡ bỏ. Sẽ có 3 loại directive (component, decorator,template).
- $scope - scopes và scope inheritanc được đơn giản hóa với yêu cầu phải inject $ scope được gỡ bỏ.
- angular.module - module trong angular được thay thế bằng các module có sắn của ES6 .
- jQLite -. được loại bỏ chủ yếu nhằm tăng performance.
Làm thế nào chúng ta có thể sử dụng AngularJS 2.0 nếu nó chưa có bản chính thức?
Trong thời gian kể từ ng-conf một số giải pháp / cách tiếp cận đã nổi lên cho phép chúng ta phát triển ứng dụng sử dụng AngularJS 1.x và thiết lập (chuẩn bị) dự án cho việc di chuyển sang AngularJS 2.0 dễ dàng hơn. Ngay cả một dự án không được chuẩn bị để chuyển sang AngularJS 2 thì việc áp dụng các phương pháp bên dưới cũng không . Những giải pháp này là:
- ES6 - ES có thể được sử dụng thông qua transpile để ES5 sử dụng Traceur hoặc 6to5 (Babel) và có thể được sử dụng ngày nay.
- Component Architecture - Chúng ta sẽ xây dựng ứng dụng bằng cách sử dụng các Component. Loại bỏ các Controller và $scope và việc áp dụng một kiến trúc ứng dụng đã được sửa đổi