5
votes

Comment implémenter SSR pour un composant vue unique à l'intérieur de l'application laravel?

Je travaille sur un projet laravel. Il y a beaucoup de composants de vue et j'ai besoin de créer SSR en raison du référencement. Je ne peux pas utiliser nuxt.js ou quelque chose comme ça parce que mon application n'est pas SPA. J'ai les paramètres de mixage par défaut:

const mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js')
   .sass('resources/sass/app.sass', 'public/css');
mix.disableSuccessNotifications();

Je place les composants de vue dans des vues laravel (modèles de lames) comme . Comment puis-je implémenter SSR pour ces composants uniquement dans ce cas?

Je dois ajouter ces composants en tant que rendu HTML à la réponse, et non en tant que en raison du référencement.


7 commentaires

qu'entend-on par SSR?


Rendu côté serveur @arun


Vous n'aurez peut-être pas besoin de faire de SSR pour le référencement. Il pourrait suffire de ne rendre que les informations nécessaires au référencement. Google ne considère pas cela comme du camouflage.


@ RaduDiță avant de poser une question ici, je l'ai posée sur webmasters.stackoverflow: webmasters.stackexchange.com/questions/121490 vérifiez-le, je suppose que je dois faire la SSR ici


Il s'agit d'une excellente ressource sebastiandedeyne.com/server-side-rendering-javascript- de-p‌ hp


Je pense avoir vu une solution basée sur un webworker pour cela, mais je ne me souviens pas quand ni où


@DerekPollard oui, vérifié, mais il n'y a pas de SSR pour les composants uniques, cette solution basée sur le remplacement de la racine div


3 Réponses :


0
votes

Les solutions actuelles nécessitent l'utilisation de Node, ou dans des cas extrêmes de PHP en combinaison avec le moteur V8Js.

Voir https://ssr.vuejs.org/guide/# intégration avec un serveur pour vous aider à démarrer. vue-server-renderer est basé sur une implémentation Node / express.js qui rend votre HTML au préalable.

Je n'ai encore essayé aucune solution basée sur PHP et c'est malheureusement la meilleure réponse que je puisse vous donner pour le moment.


1 commentaires

Je ne considérerais pas un moteur de rendu PHP comme un "cas extrême" - vous gagnez la familiarité et la séparation d'avoir SSR fait avec quelque chose avec lequel vous êtes à l'aise. C'est pourquoi il existe des packages de RoR et Laravel qui sont si populaires



3
votes

Le rendu côté serveur n'est pas une seule ligne, mais il existe un package pour laravel pour le faire, veuillez le vérifier:

https://github.com/spatie/laravel-server-side-rendering


0 commentaires

0
votes

Utilisez uniquement une lame. N'utilisez pas de composants de Vue. Vous pouvez les utiliser pour des choses inutiles de Clawer, des moteurs de recherche comme des formulaires, des paiements, des réservations, des paniers, des paiements,


0 commentaires