【发布时间】:2020-05-29 13:23:24
【问题描述】:
以下代码可以正常工作。当我们更改语言时,由于ref,文本会正确更新:
const mainNavigationLinks = computed(() => [
{ label: context.root.$t('navigationMenu.home') },
{ label: context.root.$t('navigationMenu.tickets') },
])
return {
mainNavigationLinks,
}
但我们真正想要的是将mainNavigationLinks 作为reactive 对象,这样我们就可以在数组中添加和删除项目,并让Vue 使用ref 使用正确的翻译相应地更新组件在array 内。根据Vue docs,这应该是可能的
但是,当我们尝试下面的代码时,我们发现标签不再是反应性的:
const mainNavigation = reactive([
{ label: context.root.$t('navigationMenu.home') },
{ label: context.root.$t('navigationMenu.tickets') },
])
const mainNavigationLinks = computed(() => mainNavigation)
为了能够将项目添加到数组并仍然具有反应性,我们在这里缺少什么?感谢您的帮助。
【问题讨论】:
标签: javascript vue.js vue-i18n vue-composition-api