5

Tôi đã phát triển ứng dụng web bằng cách sử dụng phản ứng hoặc góc cạnh nhưng tôi nhầm lẫn tại sao mọi người sử dụng thư viện như phản ứng-bootstrap (https://react-bootstrap.github.io/introduction.html) hoặc Angular-bootstrap? Bởi vì khi tôi tạo ra tôi chỉ cần tải khung css bằng cách sử dụng thẻ liên kết với lib tương ứng của nó, sau đó ở bên reactjs, tôi chỉ cần đặt các lớp cần thiết cho một thành phần. Nghe có dễ hơn không?Tại sao chúng ta cần reactjs-bootstrap nếu có cách dễ dàng?

Xin cảm ơn,

Trả lời

2

Nó phải làm với phần Javascript của Bootstrap. CSS sẽ hoạt động tốt với một thẻ liên kết.

Nhưng React và Angular là các thư viện Javascript có rất nhiều thư viện để thao tác DOM. Nếu bạn cũng sử dụng một cái gì đó như Bootstrap hoặc jQuery để thao tác DOM, nó có thể sẽ không chơi tốt với React hoặc Angular vì họ đang cố gắng làm những việc tương tự theo những cách rất khác nhau có thể cùng một lúc. Vì vậy, các thư viện Javascript liên quan đến DOM cần phải được viết lại để chúng chơi độc đáo với React/Angular.

Từ phản ứng-bootstrap tài liệu:

chúng tôi không xuất xưởng với bất kỳ css bao gồm

Tất cả họ đối phó với là JS.

+0

Vậy sao? Tôi đã làm việc với họ, nhưng mọi thứ dường như vẫn ổn. Giống như cách menu sẽ hoạt động và bất kỳ thành phần css nào khác sử dụng js. Ngoài ra một trong những mối quan tâm của tôi là có vẻ như là sự phát triển của các thư viện bị trì hoãn hoặc tôi không thể sử dụng bất kỳ phiên bản nào của bootstrap tôi muốn sử dụng. – user3856437

+1

Từ Facebook: * Phản ứng không biết các thay đổi được thực hiện cho DOM bên ngoài Phản ứng. Nó xác định các bản cập nhật dựa trên biểu diễn bên trong của nó, và nếu các nút DOM tương tự được thao tác bởi một thư viện khác, React bị lẫn lộn và không có cách nào để phục hồi. * * Điều này không có nghĩa là không thể hoặc thậm chí khó kết hợp React với các cách khác ảnh hưởng đến DOM, bạn chỉ cần chú ý đến những gì mà mỗi cái đang làm.* Vì vậy, chỉ khi bạn biết các chi tiết cụ thể về cách thư viện DOM của bạn thao tác mọi thứ và có thể mã hóa xung quanh để ngăn chặn bất kỳ kết quả không mong muốn nào, hãy sử dụng chúng. –

+0

Được rồi, tôi đã chứng ngộ. Tôi thích cả hai câu trả lời của bạn nhưng số 2 cho tôi ý tưởng rằng không phải vì nó đang chạy phải là điều đúng đắn để làm. Tôi luôn muốn thực hành tốt nhất ở đó với tư cách là một nhà phát triển phần mềm. Tôi sẽ sử dụng chúng từ bây giờ. Cảm ơn bạn. – user3856437

1

Khi bạn chọn làm việc với reactjs bạn đã chọn một thư viện cập nhật DOM của bạn một cách tinh vi và tinh tế.
Nó có DOM và bó thuật toán ảo (như Diffing algorithm) để xác định thời điểm và cách cập nhật DOM theo cách nhanh nhất và hiệu quả và hiệu quả nhất.

Khi bạn kết hợp điều này với thư viện khác cập nhật DOM, về cơ bản bạn sẽ ngắt các thuật toán đó để thực hiện công việc của mình.
Bên cạnh các khía cạnh hiệu suất, bạn đang làm việc chống lại mẫu phản ứng, bạn phá vỡ "mẫu thành phần".
React-Bootstrap là ở đây để giúp bạn duy trì mô hình thành phần của mình với các thành phần của chúng. bạn chỉ cần bao gồm css và các tệp tài nguyên khác.
Các thành phần của chúng không hoạt động bên cạnh việc hiển thị HTML với các tên lớp thích hợp tương ứng với các lớp trong tệp css của bootstrap.
Họ làm điều đó giống như cách tất cả các thành phần khác của bạn làm điều đó, thông qua props.
Bằng cách này bạn có thể có một thành phần khởi động chơi tốt đẹp với các thành phần khác của bạn theo cách riêng mà không phá vỡ mẫu.

Vâng, sẽ dễ dàng hơn khi bỏ một số tệp cssjs và mọi thứ hoạt động nhưng khó duy trì, gỡ lỗi và tăng tỷ lệ.

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