VueI18n 检查翻译是否存在

Dav*_* Go 12 internationalization vue.js vue-i18n

有没有办法检查翻译是否存在?

<p v-if="$t('some_key')">{{ $t('some_key') }}</p>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果没有翻译,它将打印“some_key”。也许有一种方法可以配置全局回退?

Eri*_*uan 22

您可以使用该$te方法。

用法示例:

<p v-if="$te('some_key')">{{ $t('some_key') }}</p>
Run Code Online (Sandbox Code Playgroud)

https://kazupon.github.io/vue-i18n/api/#vue-injected-methods

  • 在 vue-i18n 9.x 中,仅旧版 API 支持此功能。是否有等效的组合 API? (5认同)

小智 8

<template>
    <p v-if="te('some_key')">{{ t('some_key') }}</p>
</template>

<script setup>
import { useI18n } from 'vue-i18n';
...
const { t, te } = useI18n();
</script>
Run Code Online (Sandbox Code Playgroud)