2013-08-24 32 views
9

Tôi là newbie với JavaScript phía máy khách. Trong một dự án web, tôi tìm thấy về angularjs và sử dụng một số cơ bản về điều này. Tôi có nên học jQuery hay chỉ sử dụng Angularjs cho dự án khác?Nên học angularjs mà không cần jQuery?

+0

Chúng bổ sung, bạn có thể sử dụng cả hai. – str

+4

Để có câu trả lời toàn diện hơn về việc sử dụng Góc và mối quan hệ tinh tế với jQuery, hãy xem [tại đây] (http://stackoverflow.com/questions/14994391/how-do-i-think-in-angularjs-if-i -have-a-jquery-background). Đặc biệt chú ý đến bản tóm tắt câu trả lời được chấp nhận. – MasterAM

Trả lời

21

Trong khi học AngularJS nó là tốt nhất không để bao gồm jQuery. Xin lưu ý rằng tôi đang nói về quá trình học tập ở đây, không nói rằng bạn không nên sử dụng jQuery trong dự án cuối cùng của bạn.

Các triết lý và cách tiếp cận của cả hai thư viện để xây dựng giao diện người dùng (khai báo AngularJS và jQuery bắt buộc) khác nhau đến mức bạn cần phải bằng cách nào đó không thể học được nhiều thói quen của jQuery để sử dụng phần lớn AngularJS.

Rời khỏi jQuery trong quá trình tìm hiểu sẽ "buộc" bạn phải nắm lấy cách AngularJS. Khi bạn đã nắm bắt đầy đủ AngularJS, bạn có thể bắt đầu giới thiệu jQuery trong chỉ thị chỉ.

Đối với các cuộc thảo luận rộng hơn về chủ đề này thấy "Thinking in AngularJS" if I have a jQuery background? nhưng trong ngắn hạn:

AngularJS

Bắt đầu học mà không bao gồm jQuery.

0

Góc có thể sử dụng jQuery nếu nó có trong ứng dụng của bạn khi ứng dụng đang được khởi động. Nếu jQuery không có mặt trong đường dẫn kịch bản của bạn, Angular sẽ quay trở lại việc thực hiện riêng của nó về tập con của jQuery mà chúng ta gọi là jQLite.

3

Bạn có thể hòa hợp với angular.js mà không cần sử dụng jQuery nếu bạn dính vào các tính năng cốt lõi của nó. Nếu bạn muốn bao gồm các thư viện của bên thứ ba trong dự án của bạn, hầu hết trong số họ sử dụng jQuery ngày nay, do đó bạn sẽ liên lạc với nó theo cách này hay cách khác.

Lưu ý rằng tình trạng này "cải thiện" khi những người góc cạnh liên tục chuyển các thư viện đó sang góc cạnh. Ví dụ. bootstrap được chuyển vào dự án bootstrap góc-ui tới native angular.js (http://angular-ui.github.io/bootstrap/).

Một vấn đề còn lại là jQuery mất rất nhiều công sức để hỗ trợ phiên bản trình duyệt cũ hơn mà angular.js không làm. Vì vậy, trong khi bootstrap ban đầu hỗ trợ nhóm ie8 angular-ui quyết định không.

Lời khuyên của tôi sẽ là: bắt đầu với angular.js đơn giản và nếu nhu cầu cho các thành phần của bên thứ ba phát sinh quyết định liệu bạn có nên thêm độ phức tạp vào jQuery hay không.

EDIT: Dưới đây được mô tả cách góc tương tác với jQuery: AngularJS DOM selector

Các vấn đề liên quan