【发布时间】:2022-01-06 14:57:25
【问题描述】:
我使用 CLI 创建了一个 Vue 3 应用程序并将 PrimeVue 添加到我的项目中。基于docs 我想设置语言环境。
在 main.ts 文件中,我尝试设置具有多种语言的示例
.use(PrimeVue, {
locale: {
en: {
message: "Message",
},
ja: {
message: "メッセージ",
},
de: {
message: "Nachricht",
},
},
})
这是一个示例组件,它尝试根据所选语言环境使用 message
<template>
<div>
<p>{{ message }}</p>
<button @click="setCurrentLocaleToJapanese">Change to japanese</button>
</div>
</template>
<script lang="ts">
import { defineComponent, ref } from "vue";
import { usePrimeVue } from "primevue/config";
export default defineComponent({
setup() {
const primevue = usePrimeVue();
const message = ref(primevue.config.currentLocale.message); // reactive, fallback locale?
function setCurrentLocaleToJapanese() {
primevue.config.currentLocale = "ja";
}
return { message };
},
});
</script>
我的整个代码都是伪代码,因为我还不知道正确的语法。我正在努力解决多个问题:
- 如何配置回退语言环境?
- 是否有类似于 vue-i18n 的东西来访问
message的正确翻译,例如{{ $t('message') }}?这个const message = ref(primevue.config.currentLocale.message);是错误的。 - 如何全局更改当前选定的语言环境?
【问题讨论】:
-
你的问题有点宽泛,也许有点具体。您可以尝试在他们的 Github 存储库中发布这个问题:github.com/primefaces/primevue/issues
-
嗯,是的,在这里尝试过,但还没有得到答案:/ forum.primefaces.org/…
标签: javascript vue.js internationalization primevue