2016-08-17 5 views
0

Quelles sont les meilleures pratiques pour invoquer CSS différents lorsque le client pour ma page React universelle rendue par le serveur a Javascript désactivé?Universal React sans Javascript

J'ai essayé d'inclure Modernizr avec className = "no-js" sur le tag html mais il n'a pas été édité.

J'ai réussi à obtenir quelque chose à travailler comme indiqué ci-dessous, mais il doit y avoir une meilleure façon. J'ai cherché des exemples, mais je n'ai rien trouvé de pertinent.

Répondre

1

Dans une application rendue serveur, vous pouvez avoir une des nombreuses sources de données:

  • requête param
  • cookies
  • données POST

La seule entrée pour le côté serveur code est la demande faite lors du chargement d'une page dans votre application dans votre navigateur. Vous pouvez choisir de configurer le serveur lors de son démarrage (par exemple, lorsque vous exécutez un environnement de développement ou de production), mais cette configuration est statique.

La demande contient des informations sur l'URL demandée, y compris les paramètres de requête, ce qui sera utile lors de l'utilisation de quelque chose comme React Router. Il peut également contenir des en-têtes avec des entrées telles que des cookies ou des autorisations, ou des données de corps POST.

Dans un script/cartographie noscript, vous pouvez configurer un des paramètres par défaut:

  • Render noscript comme la valeur par défaut, puis la remplacer par le script injection CSS spécifique via le CSSOM
  • Serve un noscript route spécifique par défaut, puis passer à la route de script basée sur un cookie
  • Créer un formulaire qui affiche des capacités de script sur le serveur, puis l'utiliser comme une page de saut pour éviter noscript/script dans le balisage

Références