Các mẫu RxJS nâng cao
Higher-order observable, multicasting, toán tử share, khôi phục lỗi, chiến lược retry, backpressure, toán tử tùy chỉnh
1Sự khác biệt chính giữa switchMap và mergeMap khi xử lý các yêu cầu HTTP đồng thời là gì?
Sự khác biệt chính giữa switchMap và mergeMap khi xử lý các yêu cầu HTTP đồng thời là gì?
Câu trả lời
switchMap hủy các yêu cầu trước khi có giá trị mới đến, trong khi mergeMap duy trì tất cả các đăng ký hoạt động đồng thời. Trong thanh tìm kiếm, switchMap tự động hủy các yêu cầu đang chạy khi có đầu vào mới, ngăn kết quả lỗi thời. mergeMap phù hợp với các hành động độc lập đều phải hoàn tất, như tải lên file song song.
2Khi nào nên dùng concatMap thay vì mergeMap để xử lý hàng đợi hành động của người dùng?
Khi nào nên dùng concatMap thay vì mergeMap để xử lý hàng đợi hành động của người dùng?
Câu trả lời
concatMap đảm bảo thứ tự thực thi bằng cách chờ mỗi observable bên trong hoàn tất trước khi xử lý cái tiếp theo, trong khi mergeMap xử lý tất cả hành động song song mà không đảm bảo thứ tự. Dùng concatMap cho các thao tác quan trọng cần thứ tự nghiêm ngặt, như giao dịch ngân hàng tuần tự hoặc gửi tin nhắn chat. mergeMap phù hợp cho các hành động độc lập có thể chạy song song.
3Higher-order observable là gì và tại sao cần toán tử flattening?
Higher-order observable là gì và tại sao cần toán tử flattening?
Câu trả lời
Higher-order observable là một observable phát ra các observable khác. Ví dụ, một observable click phát ra một observable yêu cầu HTTP cho mỗi lần click. Không có toán tử flattening (switchMap, mergeMap, concatMap), bạn sẽ có cấu trúc lồng nhau Observable<Observable<T>> không thể sử dụng trực tiếp. Các toán tử flattening tự động đăng ký vào các observable bên trong và phát giá trị của chúng trong luồng chính.
Nên dùng toán tử nào để tự động hủy tìm kiếm đang diễn ra khi người dùng nhập mới?
exhaustMap khác switchMap như thế nào trong xử lý các yêu cầu quan trọng?
+19 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Angular khác
Kiến thức cơ bản TypeScript
TypeScript Nâng cao
Kiến thức cơ bản về Angular
Components và vòng đời
Services & Dependency Injection
Tổ chức Module Angular
Angular CLI
Directives và Pipes
Routing và Điều hướng
Reactive Forms
Template-driven Forms
Kiến Thức Cơ Bản RxJS
Operator RxJS
HttpClient và lệnh gọi API
Quản lý state cơ bản
Change Detection
Angular Signals
Standalone Components
Unit Testing trong Angular
Kiểm thử End-to-End
Build và tối ưu hóa
Nền tảng NgRx
NgRx nâng cao
Kiến trúc Angular
Tối ưu hiệu năng
Bảo mật và thực tiễn tốt nhất
Angular Universal và SSR
Micro-frontend Angular
Nắm vững Angular cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí