From an ideological or appearances point of view, it seems a bit clumsy. People see it as a submarine to get access to their patents, rather than an insurance to prevent unnecessary patent litigation costs.
I wonder what other companies do with their patent grants, e.g. Microsoft. I remember MS had one that said, you may use our patent for the Ribbon UI, as long as you follow our UI guidelines and don't make an Office competitor (which I find pretty restrictive). But maybe there are other options out there that people would find more agreeable.
I think a unilateral patent grant for React in the license would be nice, but unrealistic. Maybe they should restrict the kinds of patent actions that trigger the invalidation of the grant, say only to certain patents, but it is hard to find a good compromise.