【发布时间】:2019-11-27 18:07:04
【问题描述】:
在我的 Vue-Typescript 项目中,我声明了一个名为“data”的道具,并且对于这个道具,我还想将一个对象结构定义为默认值。有些字段是多语言的,为此我需要访问 vuex 商店,它将返回用户已激活的所有活动语言。这允许我动态生成字段。有谁知道我该如何实现这一目标?
export default class CompanyForm extends Vue {
public dialog = false;
@Prop({default: {
name: '',
address: this.$store.state.Language.data.getLanguageDataStructure(),
telephone: '',
fax: '',
email: '',
website: ''
}})
data: object;
});
【问题讨论】:
-
只是一个建议。因此,假设您将该对象传递给组件。为什么不将整个对象设置在 store 状态中。让组件访问状态成员。会干净很多吗?
-
@JeremyWalters 您可以在此处看到的对象是组件。我只是没有粘贴属于它的 HTML 代码。当我在商店状态中定义默认属性时,我必须将组件验证、属性等从默认属性中分离出来,这似乎不是一个好的解决方案,因为状态本身必须在组件内声明为独立于每次初始化
标签: javascript typescript vue.js vuex