It's not really a good idea.
With validation example, although it would work if your form had a few direct children components, what if you want to validate fields inside a <div>
as well? They won't be immediate children, so now your logic constrains your markup.
One way to accomplish what you want is to give children exactly the level of control over parent's state they need by giving a special object. React has a built-in example of this: ReactLink
and LinkedStateMixin
.
You can take the same idea and apply it to validation.