값 대신 Vue 메타 i18n 변수 이름 표시
P粉510127741
2023-08-26 18:52:56
<p>저는 vue2 프로젝트가 있고 vue-meta 및 vue-i18n을 사용하여 프로젝트를 현지화합니다.
내 브라우저 북마크에는 웹페이지 제목이 표시되지 않고 대신 변수가 표시됩니다. Google Analytics에서도 동일한 문제가 발생하는데, 변수의 값 대신 변수가 표시되는 것 같습니다. </p>
<p>이것은 내 홈 구성요소의 코드 조각입니다: </p>
<pre class="brush:php;toolbar:false;">name: '홈',
메타정보() {
반품 {
제목: this.$t("home.meta.title"),
메타: [{
이름: "설명",
콘텐츠: this.$t("home.meta.descriptioncontent")
}, {
이름: "키워드",
콘텐츠: this.$t("home.meta.keywordscontent")
},
{ 속성: 'og:title', 콘텐츠: this.$t("home.meta.title")},
{ 속성: 'og:site_name', 콘텐츠: 'www.examplesite.se'},
{ 속성: 'og:description', 콘텐츠: this.$t("home.meta.descriptioncontent")},
{ 속성: 'og:type', 콘텐츠: '홈'},
{ 속성: 'og:url', 콘텐츠: 'https://examplesite.se/'},
{ 속성: 'og:image', 콘텐츠: 'https://www.examplesite.se' + '/img/' + 'example_logo_social.png'}
]
}
},
데이터() {
반품 {
fiimagefolder: '../../이미지/',
이미지폴더: '../../fImages/',
};
},</pre>
<p>그래서 이.$t("home.meta.title") 변수는 스웨덴어와 영어 번역을 저장합니다. 사이트 내부에는 두 언어 모두 올바른 제목이 표시되지만 Google Analytics에는 "home.meta.title"만 표시됩니다. </p>
<p>제가 이해한 바로는 크롤러에 로드된 스크립트가 없기 때문에 크롤러가 내 변수 값을 볼 수 없습니다. 어떤 아이디어가 있나요? </p>
귀하의 코드 중 일부를 보면 설정 방법을 이해할 수 있으면 좋을 것입니다. 그렇지 않으면 우리는 조금 어둡고 도움을 주기 어려울 것입니다. 따라서 이것은 답변이라기보다는 주석에 가깝습니다. 하지만 주석에는 넣을 수 없지만 도움이 될 수 있는 몇 가지 코드를 공유하겠습니다.
vue-i18n을 사용하고 있고 vueMeta를 객체로 정의하고 있다고 가정합니다. 그러나 함수로 정의하면
으아악this.$t
를 포함한 다른 구성 요소 데이터에 액세스할 수 있습니다. 그들은 다음과 같이 협력해야 합니다: