While this is only my experience, when I write job requirements that cover multiple languages or frameworks it really is 'any of these are fine'. The theory is that you don't want to filter out people that would otherwise be a good fit - because for the most part smart people can learn new frameworks and languages pretty quickly. You are correct that it is suboptimal for people wanting to work on a specific tech stack, but if you're not getting any applicants because your requirements are unnecessarily strict it's not in anyone's interest.
It makes sense that you wouldn't want to prematurely filter people out, but in that case I'd think it might be better to explicitly state that. Something like "We use React, but experience with another framework (Angular, Vue, etc.) is fine. We assume you can learn React."
I think the unintended consequence of leaving it broad is that you might lose people who are specialized in the very framework you use.
In my own case, I'm pretty biased toward React, having written a book & been blogging about it for a few years. I definitely pass over job listings that leave the framework open to interpretation. The cost of finding out what they actually use is too high, unless the job looks exceptional in some way.