Debido a que  
hace que tengas espacios sin rupturas, solo debes usarlo donde sea necesario. En la mayoría de los casos, esto tendrá efectos secundarios no deseados.
Las versiones anteriores de React, creo que todas las anteriores a la v14, se insertarían automáticamente <span> </span>
cuando tuvieras una nueva línea dentro de una etiqueta.
Si bien ya no hacen esto, es una forma segura de manejar esto en su propio código. A menos que tenga un estilo que se dirija específicamente span
(mala práctica en general), esta es la ruta más segura.
Según su ejemplo, puede ponerlos juntos en una sola línea, ya que es bastante corto. En escenarios de líneas más largas, probablemente debería hacerlo así:
<div className="top-element-formatting">
Hello <span className="second-word-formatting">World!</span>
<span> </span>
So much more text in this box that it really needs to be on another line.
</div>
Este método también es seguro contra los editores de texto con recorte automático.
El otro método es el {' '}
que no inserta etiquetas HTML aleatorias. Esto podría ser más útil al diseñar, resaltar elementos y eliminar el desorden del DOM. Si no necesita compatibilidad con versiones anteriores de React v14 o anterior, este debería ser su método preferido.
<div className="top-element-formatting">
Hello <span className="second-word-formatting">World!</span>
{' '}
So much more text in this box that it really needs to be on another line.
</div>