vue.js - 如何获取值 altLanguages 并将其动态放入 JSON 中,以便可以将其加载到 Head 中
问题描述
目前我正在尝试获取 altLanguages 的值并在 JSON 中动态输出,因此可以将其注入头部。altLanguages 是在呈现页面之前应该添加的元属性值以避免错误(altLanguages 未定义)。任何人都知道该怎么做。
<template>
<header class="site-header">
<router-link to="/" class="logo">Example Site</router-link>
<nav>
<ul>
<li v-for="menuLink in menuLinks" :key="menuLink.id">
<prismic-link :field="menuLink.link">{{ $prismic.richTextAsPlain(menuLink.label) }}</prismic-link>
</li>
</ul>
</nav>
<alternate-languages :altLanguages="altLanguages" />
<!-- <alternate-content :altLanguages="altLanguages" /> -->
</header>
</template>
<script>
export default {
props: {
id: { type: String, default: "" },
altLanguages: { type: Array, default: () => ([]) }
},
data() {
return {
menuContent: [],
menuLinks: [],
// altLanguages: []
};
},
methods: {
async getMenu(lang) {
//Query to get menu content
const menuContent = await this.$prismic.client.getSingle("menu", {
lang: lang
});
this.menuContent = menuContent;
this.menuLinks = menuContent.data.menu_links;
}
},
created() {
// this.getLanguages(this.id);
this.getMenu(this.$route.params.lang);
},
watch: {
$route(to, from) {
this.getMenu(to.params.lang);
}
}
// beforeRouteUpdate(to, from, next) {
// console.log("new");
// this.getMenu(to.params.lang);
// next();
// }
};
</script>
//expected output
export default {
data: function () {
return {
title: 'My Title'
}
},
// Usage with context the component
head: {
// To use "this" in the component, it is necessary to return the object through a function
title: function () {
return {
inner: this.title
}
},
meta: [
// altLanguages should be output in here.....
{ name: 'description', content: 'My description', id: 'desc' }
]
}
...
}
}
解决方案
推荐阅读
- python - 在 Python 中对字典进行排序
- python - 将单个元素与元素字典键/值对匹配,其中值是列表本身
- css - @media 的目的是什么(最大宽度:-1)
- android - Android Rx 去抖算子
- c++ - 在 Eigen::Matrix::data() 上使用 std::move 将 Eigen::Matrix 转换为向量
- python - Keras 中的 tensorflow 会话在哪里
- git - git-ftp 致命:无法获得最后一次提交。网络断了?错误的网址?使用 'git ftp init' 进行初始推送
- android - 如何从 Flutter 中获取 JSON 数据
- spring - Spring Boot Zuul - Hystrix 短路是 OPEN
- django - 具有双向复制功能的 Django + PostgreSQL