我想在组件外格式化我的日期时间。
function transformDatetime(config, value) {
if (value) {
return $d(new Date(value), config);
}
return $t('-');
}
我试图从App示例中获取$t,但它只在组件的上下文中工作,就像useI 18 n一样。
import { getCurrentInstance } from 'vue'
export default function useGlobal() {
const instance = getCurrentInstance()
if (!instance) return
return instance.appContext.config.globalProperties
}
3条答案
按热度按时间ocebsuys1#
我找到了一个解决方案。只需将您的
i18n
导入到应用程序和use i18n.global.t
之外的文件中wydwbb8l2#
尝试使用
vue-i18n
中的useI18n
可组合函数来获得t
方法,而不是$t
:xcitsw883#
我认为你的方法也应该是可组合的,这样你就可以简单地在里面使用方法useI18n()。
就像
use-transform-datetime.ts
然后只需在需要它的vue文件中使用它
这样,您甚至可以将其他转换方法添加到同一个组合