Regardless of the well explained answers here, there may be other reasons why you don't see the change you expect post changing the props or state:
Watch out for any event.preventDefault();
in the code where you want to re-render by a state \ props change, as it will cancel any cancelable event following this statement.