In linear steppers, steps with pending components should not be considered completed #8645
Labels
P3
An issue that is relevant to core functions, but does not impede progress. Important, but not urgent
Bug, feature request, or proposal:
Bug
What is the expected behavior?
In a linear stepper, going to the next step should require that no components of the step are in invalid or pending states (i.e. all components are valid or disabled). Pending components (i.e. components with async validators pending) should block the step.
What is the current behavior?
Pending components do not block the step.
What are the steps to reproduce?
Example: http://plnkr.co/edit/aFMUy13jRinsHHudFltm?p=preview
The first step has a single input component, with two validators:
validators.required
(sync)bob
, but with a 2 seconds delay (to mock a remote check)Type "bob", wait a few seconds for the check to complete, then try to go the second step. It will block: first step is required.
Change value to "". Then type "bob" again, but go the second step while validation is pending. The stepper is not blocked.
What is the use-case or motivation for changing an existing behavior?
In a linear stepper, validation is expected to be required.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular 5.0.3, Material 5.0.0-rc1
The text was updated successfully, but these errors were encountered: