【发布时间】:2017-07-01 21:19:51
【问题描述】:
我有一个 vuejs 组件,它是一个表单。它有一个字段“电子邮件”。如果从父组件作为名为“email”的道具提供给组件,则默认值为“email”。当用户提交表单时,我需要触发一个事件,以便父级可以获取“电子邮件”的更新值。
所以这看起来像
<parent>
<child :email="email" />
</parent>
现在问题是我孩子的对象看起来像:
{
props: ['email'],
data() {return {d_email: this.email}
}
问题是,我总是在表单字段中看到一个空值。这似乎正在发生,因为我的输入表单标签如下所示:
<input type="text" v-model="d_email" :value="email" />
如果我不使用 value="email",那么当父组件中 email 的值发生变化时,子组件不会更新,这是需要的。
但是,由于我还需要在提交表单时将输入更改发送回父级,因此我需要将输入值存储在某处。我为此使用 d_email。
然而,当孩子第一次被渲染时,prop email 为 null,因此 d_email 被初始化为 null。这意味着由于 v-model,inout 字段总是显示为 null。
这里推荐的方法是什么?
【问题讨论】:
标签: javascript ajax forms vue.js vuejs2