Tôi đã googled câu hỏi này nhiều lần và không bao giờ tìm thấy câu trả lời thỏa đáng. Hầu hết các câu trả lời dường như chỉ nói rằng "có, plugin Bootstrap yêu cầu jQuery" hoặc "có, bạn có thể sử dụng BS mà không cần jQuery nếu bạn không sử dụng plugin". Sự phụ thuộc của Bootstrap vào jQuery [như được mô tả trong phần bắt đầu nhanh của họ] khiến tôi coi là một quyết định thiết kế tồi, ít nhất là vì những lý do sau
- jQuery là một framework khá lớn và cồng kềnh, và bây giờ bất kỳ trang web nào sử dụng plugin BS sẽ phải tải xuống. Được cấp, người dùng BS có thể sử dụng các bản dựng mỏng/thu nhỏ [trừ khi họ muốn sử dụng jQuery AJAX], nhưng ngay cả những bản dựng đó cũng thêm thời gian tải không đáng kể cho thư viện mà có thể không được sử dụng bởi bất kỳ thứ gì ngoài Bootstrap
- jQuery nói chung dường như không còn được ưa chuộng gần đây, vì các khung như Angular và React ngày càng phổ biến hơn [xem xu hướng StackOverflow]. tôi biết cũ. = xấu và jQuery hầu như vẫn còn phổ biến trên web, nhưng tại sao các nhà phát triển BS lại chọn dựa vào một khung đã tồn tại hơn một thập kỷ?
- Đơn giản chỉ cần yêu cầu jQuery là
Bootstrap 5 Alpha được phát hành vào tháng 6 năm 2020. Bootstrap mới loại bỏ jQuery và không còn hỗ trợ Internet Explorer [IE]. Nhóm cho biết đã đến lúc chuyển từ "những gì đã lỗi thời hoặc không còn phù hợp"
Khung Bootstrap, ban đầu được phát triển và mã nguồn mở bởi Twitter, là một công cụ không thể thiếu cho các nhà phát triển web. Nó cung cấp một tập hợp các thành phần giao diện người dùng sẵn sàng sử dụng và một hệ thống lưới cần thiết cho các trang web thích ứng cần hiển thị tốt trên PC và trình duyệt di động. Kể từ khi thành lập, Bootstrap luôn phụ thuộc vào jQuery framework. Khung jQuery, ban đầu được tạo vào năm 2006, là một trong những khung JavaScript phổ biến nhất mọi thời đại. Nó cung cấp các tính năng ngôn ngữ mạnh mẽ và khả năng tương thích giữa nhiều trình duyệt trong thời đại mà công nghệ web đang trải qua nhiều thách thức và thử nghiệm để hỗ trợ nhiều trường hợp sử dụng khác nhau, từ các trang web tương tác, ứng dụng một trang, yêu cầu AJAX và ứng dụng web dành cho thiết bị di động
Tua nhanh đến năm 2020, với các tiêu chuẩn JavaScript và các trình duyệt web thống trị đã hỗ trợ hầu hết các tính năng trong jQuery, nhóm Bootstrap đã quyết định tiếp tục. Khung Bootstrap 5 đã loại bỏ jQuery như một yêu cầu. Nó đã tiết kiệm được 85KB JavaScript được rút gọn, điều này có thể rất quan trọng khi Google bắt đầu sử dụng tốc độ trang làm yếu tố xếp hạng cho các trang web dành cho thiết bị di động và sắp tới cho cả các trang web dành cho máy tính để bàn. Nhóm Bootstrap thực hiện việc này vì Bootstrap 5 cũng không còn hỗ trợ Internet Explorer. Nhóm lưu ý rằng tất cả các trình duyệt được hỗ trợ đều cung cấp các tính năng thay thế jQuery bằng vanilla JavaScript. Quyết định loại bỏ Internet Explorer có thể là do thị phần của IE hiện đã giảm xuống dưới 3% ngay cả đối với người dùng Máy tính để bàn
Nhà phát triển Flavio Copes có bài viết về "Bạn nên sử dụng hay học jQuery trong năm 2020. " Trong đó, anh ấy đã chỉ ra các thay thế vanilla JavaScript từ các tính năng phổ biến nhất của jQuery. Dưới đây là một số ví dụ
- Chọn các phần tử DOM bằng cách sử dụng dấu # hoặc. ký hiệu.
document.querySelector['.button']
- Đang đợi trang DOM tải.
document.addEventListener["DOMContentLoaded", [] => { .. }]
- Thực hiện các yêu cầu AJAX.
fetch['/api.json'].then[response => response.text[]].then[body => console.log[body]]
Nếu các nhà phát triển tạo một ứng dụng web mới vào năm 2020, jQuery có thể sẽ không còn cần thiết nữa. Web cuối cùng đã phát triển ngoài jQuery
Một lợi ích khác của việc loại bỏ IE là Bootstrap 5 hỗ trợ các thuộc tính tùy chỉnh CSS. Chúng làm cho CSS linh hoạt hơn và thậm chí có thể lập trình được. Để biết một số ví dụ, hãy xem tài liệu về cách định kiểu bảng trong Bootstrap 5
Bên cạnh việc loại bỏ jQuery, Bootstrap 5 còn mang đến một số tính năng đáng chú ý. Bootstrap 5 có giao diện người dùng được cập nhật để tập trung hơn vào nội dung trên trang. Nó có một bộ điều khiển biểu mẫu tùy chỉnh được thiết kế lại và đẹp hơn. Nó cũng có một logo mới và hơn 300 biểu tượng bổ sung. Đối với các trang web sử dụng nhiều biểu tượng, sprite SVG mới cho phép các nhà phát triển tải tất cả các biểu tượng trong một tệp SVG và sau đó sử dụng chúng khi cần. Điều đó có thể sẽ tăng hiệu suất trang web và cải thiện khả năng đọc HTML
Khung Bootstrap là phần mềm nguồn mở có sẵn theo giấy phép MIT. Gửi các lỗi và bản sửa lỗi của Bootstrap 5 alpha cho nhóm thông qua kho lưu trữ GitHub của nó được hoan nghênh
Lấy cảm hứng từ nội dung này?
Trở thành biên tập viên cho InfoQ là một trong những quyết định sáng suốt nhất trong sự nghiệp của tôi. Nó đã thử thách tôi và giúp tôi trưởng thành theo nhiều cách. Chúng tôi muốn có nhiều người tham gia nhóm của chúng tôi
Thomas Betts Trưởng ban biên tập, Thiết kế và kiến trúc phần mềm @InfoQ;
Viết cho InfoQ
Xếp hạng bài viết này
nhận con nuôi
Phong cách
Đã liên hệ với tác giả
Nội dung này nằm trong chủ đề Web Development
chủ đề liên quan- Sự phát triển
- HTML5
- jQuery
- Thư viện JavaScript
- Ứng dụng Internet phong phú
- JavaScript
- CSS
- Phát triển web
- HTML
- Ngôn ngữ động
- ngôn ngữ đánh dấu
- Bootstrap
biên tập liên quan
- SQL sang NoSQL. Sự khác biệt về kiến trúc và những cân nhắc khi di chuyển
Nội dung được tài trợ có liên quan
Nhà tài trợ liên quan
ScyllaDB là cơ sở dữ liệu dành cho các ứng dụng sử dụng nhiều dữ liệu yêu cầu hiệu suất cao + độ trễ thấp. Đạt được quy mô cực lớn với TCO thấp nhất. Tìm hiểu thêm
Nội dung liên quan
Vanilla Extract - CSS hiện đại trong thư viện JS
Nâng cao, SSR cho các Thành phần Web - Brian Leroux tại QCon San Francisco 2022
Angular 15 - Các thành phần độc lập ổn định
Chuỗi công cụ Front-End tích hợp, tất cả trong một Rome đã phát hành phiên bản V10, được mệnh danh là bản phát hành ổn định đầu tiên
Máy tính không máy chủ tốt hơn với WebAssugging
Triển khai Đăng nhập không cần mật khẩu với Giao thức WebAuthn
Tách mối quan tâm trong nút. js
Xoay một nút. js Monolith thành Monorepo mà không làm gián đoạn nhóm
Khả năng mở rộng nền tảng hiệu quả, an toàn thông qua WebAssugging
Bản tóm tắt AWS lại. phát minh 2022
Áp dụng mã thấp/không có mã. Sáu Fitnesses để tìm kiếm
AWS gia nhập không gian cộng tác và phát triển từ xa với CodeCatalyst
Khả năng phục hồi4j 2. 0. 0 cung cấp hỗ trợ cho JDK 17
Tổng hợp tin tức về Java. JEP được nhắm mục tiêu cho JDK 20, AWS giới thiệu tính năng Lambda SnapStart
API ở quy mô. Tạo các giao diện phong phú vượt qua thử thách của thời gian
Với khả năng quan sát, việc triển khai trên đám mây không còn đáng sợ nữa
AWS công bố tính khả dụng chung của Amazon Omics
Apple bổ sung hỗ trợ Core ML để khuếch tán ổn định trên Apple Silicon
AWS công bố triển khai Blue/Green cho MySQL trên Aurora và RDS
SkyPilot mã nguồn mở nhắm mục tiêu tối ưu hóa chi phí đám mây cho ML và khoa học dữ liệu
Nợ kỹ thuật cho bạn biết điều gì?
OmniFish cung cấp hỗ trợ cho Jakarta EE 10 và GlassFish 7
AWS Lambda SnapStart tăng tốc các hàm Java
Cho phép làm việc từ xa hiệu quả - Nguyên tắc và mẫu từ cấu trúc liên kết nhóm
Cải tiến hiệu quả đòi hỏi người hỗ trợ có kỹ năng
Sử dụng Serverless WebSockets để kích hoạt tính năng nhắn tin theo thời gian thực
AWS công bố DataZone, một dịch vụ quản lý dữ liệu mới để quản lý dữ liệu
Hệ thống con Windows dành cho Linux hiện có sẵn trong Microsoft Store
Cơ sở dữ liệu Azure SQL Tích hợp điểm cuối REST bên ngoài hiện có trong Bản xem trước công khai
Bảo mật API. từ Defense-in-Depth [DiD] đến Zero Trust
AWS giới thiệu triển khai liên tục CloudFront cho các chiến lược Blue-Green và Canary
Sáu điều không thể
Code-as-Policies của Google cho phép rô-bốt viết mã của riêng chúng
Cách nền tảng SaaS có thể mang lại cơ hội nghề nghiệp cho \"Những người bỏ cuộc thầm lặng\"
thiên hà. Mô hình ngôn ngữ lớn cho kiến thức khoa học
Akka 22. 10 giới thiệu Projections trên gRPC
Tổng hợp tin tức về Java. Các bản phát hành chính cho mùa xuân, Resilience4j, Open Liberty, GlassFish, Kotlin 1. 8-Thử nghiệm
Uber giảm 169 lần chi phí ghi nhật ký bằng cách sử dụng Bộ xử lý nhật ký nén [CLP]
PHP 8 - Các lớp và Enum
AWS Lambda hiện có hỗ trợ cho nút. js 18 Thời gian chạy
Bản tin InfoQ
Tổng hợp nội dung của tuần trước trên InfoQ được gửi vào thứ Ba hàng tuần. Tham gia cộng đồng hơn 250.000 nhà phát triển cấp cao. Xem một ví dụ
Nhập địa chỉ email của bạn
Chọn quốc gia của bạn Tôi đồng ý với InfoQ. com xử lý dữ liệu của tôi như được giải thích trong Thông báo về quyền riêng tư này.
Chúng tôi bảo vệ quyền riêng tư của bạn
xin chào người lạ
Bạn cần Đăng ký tài khoản InfoQ hoặc Đăng nhập hoặc đăng nhập để gửi bình luận. Nhưng còn rất nhiều điều đằng sau việc đăng ký