Vue 3 vue-i18n。如何在应用程序(.vue 文件)之外使用 $t(t)?合成API
P粉032649413
2023-08-26 10:24:05
<p>我想在组件外部格式化我的日期时间。</p>
<pre class="brush:js;toolbar:false;">function transformDatetime(config, value) {
if (value) {
return $d(new Date(value), config);
}
return $t('-');
}
</pre>
<p>我正在尝试从应用程序实例获取 $t。但它只在组件上下文中起作用,就像 useI18n 一样。</p>
<pre class="brush:js;toolbar:false;">import { getCurrentInstance } from 'vue'
export default function useGlobal() {
const instance = getCurrentInstance()
if (!instance) return
return instance.appContext.config.globalProperties
}
</pre>
<p><br /></p>
我找到了解决方案。只需将您的
i18n
导入到应用程序外部的文件中,然后使用 i18n.global.t