angular-ui / angular-ui/ui-router

When resolving an onBefore promise, the previous state is removed while async resolves are still pending.

Đang mở
#3,827 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
stale
Ngôn ngữ chính
TypeScript
Star
13.4k
Fork
2.9k
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

This is a (check one box):

- [X] Bug Report

My version of UI-Router is: 1.0.28

# Bug Report

#### Current Behavior:

We can return a promise to `transitions.onBefore()`, if the promises resolves, I observe that the router starts the exit/retain/enter flow, and in turn removes the original state from the DOM.

The new state is only added after all async resolves are completed. In the mean time this leaves an empty dom or 'flickering' page.

#### Expected Behavior:

I expect the behavior to be the same to when I am not using an async onBefore, which is: Don't exit the original state until all async resolves are completed.

When returning a promise `transitions.onEnter()` the behavior is as expected. I can work with that.

If you think I am on to something here I am happy to provide a repro – otherwise feel free to ignore. Thanks for maintaining this useful project!

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.