Допустим компонент-визард (т. е. поэтапная форма), у него есть стейт "step", который определяет, какой этап формы показывается сейчас. Далее:
switch (this.state.step) {
case "first":
return <input type="text" name="a" class="form-control" />;
case "second":
return <input type="text" name="b" class="form-control" />
}
Все вроде бы работает нормально, но если на первом этапе формы возникают ошибки валидации (добавляем класс is-invalid к инпуту), то этот класс переходит и ко второму новому инпуту на другом этапе, хотя должно этого не быть из-за перерендера. Как избежать этого? Или вычищать все вручную?