Afficher les noms de variables Vue meta i18n au lieu des valeurs
P粉510127741
P粉510127741 2023-08-26 18:52:56
0
1
518
<p>J'ai un projet vue2 et j'utilise vue-meta et vue-i18n pour localiser le projet. Dans les favoris de mon navigateur, le titre de la page Web n'est pas affiché, mais la variable est affichée. Le même problème se produit dans Google Analytics, il semble afficher la variable au lieu de la valeur de la variable. </p> <p>Voici l'extrait de code de mon composant Home : </p> <pre class="brush:php;toolbar:false;">nom : 'Accueil', métaInfo () { retour { titre : this.$t("home.meta.title"), méta : [{ nom : "description", contenu : this.$t("home.meta.descriptioncontent") }, { nom : "mots-clés", contenu : this.$t("home.meta.keywordscontent") }, { propriété : 'og:title', contenu : this.$t("home.meta.title")}, { propriété : 'og:site_name', contenu : 'www.examplesite.se'}, { propriété : 'og:description', contenu : this.$t("home.meta.descriptioncontent")}, { propriété : 'og:type', contenu : 'Accueil'}, { propriété : 'og:url', contenu : 'https://examplesite.se/'}, { propriété : 'og:image', contenu : 'https://www.examplesite.se' + '/img/' + 'example_logo_social.png'} ] } }, données() { retour { dossier fimage : '../../Images/', dossier bimage : '../../fImages/', } ; },</pré> <p>Donc, cette variable.$t("home.meta.title") stocke les traductions suédoises et anglaises. À l'intérieur du site, le titre correct est affiché dans les deux langues, mais Google Analytics n'affiche que "home.meta.title". </p> <p>D'après ce que j'ai compris, le robot d'exploration ne peut pas voir les valeurs de mes variables car aucun script n'est chargé. Des idées? </p>
P粉510127741
P粉510127741

répondre à tous(1)
P粉448346289

Ce serait bien de voir une partie de votre code afin que nous puissions comprendre comment vous l'avez configuré, sinon nous serions un peu dans le flou et aurions du mal à vous aider. Il s’agit donc plus d’un commentaire que d’une réponse, mais je vais partager du code qui pourrait aider et qui ne peut pas être mis dans un commentaire.

Je suppose que vous utilisez vue-i18n et je suppose que vous définissez vueMeta en tant qu'objet. Cependant, si vous le définissez comme fonction, vous pouvez accéder à d'autres données de composants, notamment this.$t. Ils devraient travailler ensemble comme ceci :

<template>
<div>
    <p>这个页面的标题应该是“Translated Title”。</p>
</div>
</template>

<script>
export default {
    metaInfo () {
        return {
            title: this.$t('title')
        }
    }
}
</script>

<i18n>
{
    "en": {
        "title": "Translated Title"
    }
}
</i18n>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal