This all depends on the end goal really. With my approach, I look at it as a chance to normalize data being passed in. You could trigger some side-effects or just modify some finalized results. The effects don’t matter. But when parents passes in the data, the whole cycle gets triggered again.
This way, you avoid having two conflicted sources of truth. There is the one from the parent, and that influences how the child component process that data. Either way, the processing is the same.