- Tìm số 0 đầu tiên trong một mảng bit
- Unix Hiển thị thông tin về các tập tin khớp với một trong hai mẫu
- Biểu thức chính quy thay thế nhiều tệp
- Ẩn lệnh từ xtrace
我已经研究了好几天了,但到目前为止还没有找到任何解决方案。
我有一个解析器服务,它应该返回一个 Có thể quan sát được :
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) : Observable|Promise{
return Observable.forkJoin(
this.http.get(first call with queryParam),
this.http.get(second call with queryParam),
);
}
我在组件中订阅了我的 ActivatedRoute 数据,它运行良好。
但是,正如您在上面的代码中看到的,我的组件有一个 queryParam,我的 API 调用依赖于这个 queryParam。当我手动更改它时,它不会再次“解析”路线。
我完全理解为什么,我阅读了文档。
有没有人有解决方法?在这种情况下,甚至可以订阅参数并返回一个 Observable 吗?
到目前为止我试过了,但它没有返回一个 Observable,所以它什么都不做:
this.router.events.subscribe(event => {
if(event instanceof ResolveEnd){
// My previous Observable.forkJoin
}
});
谢谢 :)!
------------解决方案(感谢 Maximus): ------------
在路由中添加:
{
path: 'some path',
runGuardsAndResolvers: 'paramsOrQueryParamsChange'
...
}
然后,无需订阅路线事件或任何东西!魔法!
1 Câu trả lời
您可以为路由使用 runGuardsAndResolvers
。官方文档是这样说的:
... defines when guards and resolvers will be run. By default they run only when the matrix parameters of the route change. When set to paramsOrQueryParamsChange they will also run when query params change. And when set to always, they will run every time.
所以在定义路由时你可以这样使用它:
{
path: 'some path',
runGuardsAndResolvers: 'paramsOrQueryParamsChange'
...
}
这应该重新运行守卫和解析器。
关于angular - 如何在 queryParams 更改时重新运行解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45234826/
Tất cả những khác biệt đã biết giữa SQLite, Nhà cung cấp nội dung và Tùy chọn chia sẻ. Nhưng tôi muốn biết khi nào sử dụng SQLite hoặc Content Provider hoặc
CẢNH BÁO: Tôi đang làm việc với một backend mà tôi không kiểm soát hoàn toàn, vì vậy tôi đang vật lộn với một số cân nhắc trong Backbone có thể được giải quyết tốt hơn ở nơi khác... thật không may, tôi không có lựa chọn nào khác ngoài việc giải quyết chúng ở đây! Vì vậy,
Tôi đã vật lộn cả ngày rồi. Biểu thức tìm kiếm theo kiểu gõ đầu của tôi hoạt động hoàn hảo với dữ liệu json từ xa. Nhưng khi tôi thử sử dụng cùng dữ liệu json làm dữ liệu tìm nạp trước thì không có gợi ý nào cả. Sau khi nhấp vào dấu hiệu đầu tiên, tôi nhận được thông báo được xác định trước "Không tìm thấy bất kỳ thứ gì...", với kết quả
Tôi đang tạo một chương trình mô phỏng xổ số NHL, trong đó phải có một JTextField ở bên phải màn hình và quả bóng dự thảo nảy được vẽ ở bên trái. Tôi đã tạo một lớp có tên là Ball triển khai Runnable và trong Draf chính của tôi
Câu hỏi này đã có câu trả lời: Làm thế nào để tính khoảng thời gian trong Java và định dạng đầu ra? (18 câu trả lời) Đã đóng 9 năm trước. Đây là mã của tôi
Tôi có một ứng dụng ASP.NET Web API đang chạy trên phiên bản IIS cục bộ của mình. Ứng dụng web được cấu hình bằng CORS. Phương pháp Web API mà tôi gọi tương tự như: [POST("/API/{foo}/{ba
Tôi lấy thời gian và ngày tháng đầu vào của người dùng như sau: DatePicker dp = (DatePicker) findViewById(R.id.datePicker); TimePicker tp = (TimePicker
Liệu việc nới lỏng tiêu chuẩn “hàng xóm” có đủ không, hay có những hành động tiêu chuẩn khác có thể được thực hiện? Câu trả lời hay nhất Nếu tất cả các giải pháp liền kề đều là Tabu, có vẻ như danh sách Tabu của bạn quá dài hoặc chính sách phát hành của bạn quá nghiêm ngặt. Độ dài danh sách Tabu tốt là
Tôi đang đọc ví dụ mã này từ cppreference: #include #include #include #include template void print_queue(T& q)
Tôi phát điên mất, tôi đang cố gắng hiểu hành vi của chú giải công cụ nhưng không thành công. 1. Vấn đề đầu tiên là khi tôi thử sử dụng nó trong sự kiện nhấp chuột thông qua plugin (Nút 1) -> Nếu bạn vào Fiddle, bạn sẽ thấy bên trong 'Nội dung' rằng hàm được gọi ở mỗi lần nhấp chuột
Tôi có đoạn mã sau trong một thành phần chức năng: const [folder, setFolder] = useState([]); const folderData = useContext(FolderContex
Tôi đang gặp sự cố khi lấy hình ảnh từ S3 bằng URL được chỉ định trước và AFNetworking 3.0. Tôi có thể lấy hình ảnh bằng NSMutableURLRequest và NSURLSession, nhưng khi tôi sử dụng AFHT
Tôi đang gặp sự cố với trình quản lý Oracle UCP khi sử dụng Oracle ojdbc 12 và Java 8. Khi nhóm UCP không khởi động được, tôi muốn đóng các kết nối mà nó tạo ra. Khi ORA-02391: vượt quá
đóng cửa. Câu hỏi này cần có thông tin chi tiết hoặc rõ ràng. Hiện tại không chấp nhận câu trả lời. Bạn có muốn cải thiện câu hỏi này không? Thêm chi tiết và làm rõ câu hỏi bằng cách chỉnh sửa bài đăng này. Đã đóng 9 năm trước. Cải thiện
Tham chiếu đến plunker này: https://plnkr.co/edit/GWsbdDWVvBYNMqyxzlLY?p=preview Tôi đã chỉ định trong tệp styles.css và trong tệp src/app.ts
Tại sao thanh của tôi lại mỏng thế? Tôi đã thử đặt chiều rộng thành 1 và chúng trở nên thực sự dày. Tôi không biết phải thử cách nào khác nữa. Độ dày mặc định là 0,8, vậy có nên như vậy không? nhập matplotlib.pyplot dưới dạng plt nhập
Truy vấn thực thi như mong đợi khi tôi viết: SELECT id, day2.count - day1.count AS diff FROM day1 NATURAL JOIN day2; Nhưng điều tôi thực sự muốn là một phép nối đúng. khi
Tôi có dữ liệu thời gian sau: 0 08/01/16 13:07:46,335437 1 18/02/16 08:40:40,565575 2 14/01/16 22:2
Một số thông tin cơ bản - máy chủ NodeJS của tôi đang chạy trên cổng 3001 và ứng dụng React của tôi đang chạy trên cổng 3000. Tôi đã thiết lập một proxy trong ứng dụng React package.json của mình để proxy cho đối tác
Tôi đang gặp phải một vấn đề ngớ ngẩn. Tôi đang cố gắng tải chậm hình ảnh của mình vào ứng dụng Angular, tôi đã thử cách này 2: Nhưng cả hai đều đặt thuộc tính src thay vì data-src, tôi có bỏ sót điều gì ở đây không? Giữ d
Tôi là một lập trình viên xuất sắc, rất giỏi!