-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
🏃 improve navigation responsiveness with loading substates #495
Conversation
d37ae59
to
d847311
Compare
Looks like I have some tests to update here, I'll re-visit those in the morning. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is throwing errors on various test transitions in travis. Is that a test timing issue or is there something else going on?
@@ -3,6 +3,7 @@ import {htmlSafe} from 'ember-string'; | |||
import injectService from 'ember-service/inject'; | |||
import run from 'ember-runloop'; | |||
import {isEmberArray} from 'ember-array/utils'; | |||
import $ from 'jquery'; |
This comment was marked as abuse.
This comment was marked as abuse.
Sorry, something went wrong.
The test errors here are actually showing a change in behaviour with how version mismatch errors are handled. Previously:
With loading substates:
Thinking about this a bit more I'm not sure this is too much of an issue - it will only occur when a user is navigating in which case any unsaved data is gone anyway. A version mismatch error whilst saving will remain on the same page as no transition is kicked off. VersionMismatch errors should also be an extreme edge case. I'll update the tests to reflect the new behaviour. |
no issue - add loading substates for all routes that previously blocked transitions until their model had finished loading - enables immediate response on navigation click - loading templates include the title bar to provide immediate indication of which page is loading - loading templates include a new `{{gh-loading-spinner}}` component that will only show the spinner after 200ms to avoid flashing a spinner for users on fast connections - updated Version Mismatch tests to match new behaviour of intermediate transitions when navigating
d847311
to
527ce40
Compare
@acburdine updated, should be good to go now 😄 |
LGTM 👍 |
no issue
{{gh-loading-spinner}}
component that will only show the spinner after 200ms to avoid flashing a spinner for users on fast connections