我想像这样在字典中设置默认属性:
props: {
title: {
type: String,
default: this.$t("basic.confirm"),
},
description: {
type: String,
}
}, ...
$t
是vue-i18n,如果未在父类中定义标题,我想从字典中设置标题。但是我得到了错误:
未捕获的TypeError:this。$ t不是函数
类似错误如果我在没有this
的情况下重新加载。
未捕获的ReferenceError:未定义$ t
但是如果我在mount方法中注销此值,它将很好地工作。
有没有从字典设置默认属性的解决方案?
谢谢!
答案 0 :(得分:4)
一种解决方案是将密钥或密钥的一部分作为默认道具,例如
title: {
type: String,
default: "basic.confirm", //or "confirm"
},
和在模板中:
<h1>{{ $t(title) }}</h1> //or $t("basic." + title)
编辑:您可以在函数内部访问$ t
title: {
type: String,
default: function () {
return this.$t("basic.confirm")
}
},