Can you please explain how the component paradigm is at odds with semantic markup? Is it just that developers are now satisfied with the semantics being in their component names and props, and don't care if it actually gets rendered as undifferentiated divs?
My own hypothesis is that React gave developers permission to question some things that were previously deemed sacred in web development, and developers went too far with that. Using a component framework like React or Vue is not inherently at odds with producing good semantic markup.