【发布时间】:2019-01-07 23:58:54
【问题描述】:
如何将输入到 Name 和 Adres 输入的值传递给 Parent vue?
父级(App.vue):
<form-group-input-text
:label="'test'"
:labelvalue="'Name'"
:inputplaceholder="'Name'"
:inputname="'Name'"
:inputvalue="''"
:inputclassname="''"
:inputid="'Name'"
:validation="'required|min:3|max:5'">
</form-group-input-text>
<form-group-input-text
:label="'testt'"
:labelvalue="'Adres'"
:inputplaceholder="'adres'"
:inputname="'adres'"
:inputvalue="''"
:inputclassname="''"
:inputid="'adres'"
:validation="'required'">
</form-group-input-text>
孩子:
<form-label
:label="inputid"
:labelvalue="labelvalue">
</form-label>
<form-error :inputname="inputname"></form-error>
<form-input-text
v-on:input="handleTitle"
:validation="validation"
:inputplaceholder="inputplaceholder"
:inputname="inputname"
:inputvalue="inputvalue"
:inputclassname="inputclassname"
:inputid="inputid">
</form-input-text>
import Error from '../../form/validation/Error.vue'
import Label from '../../form/Label.vue'
import Input from '../../form/InputText.vue'
export default {
data: function () {
return {
inputvalue: ''
}
},
components: {
'form-label': Label,
'form-input-text': Input,
'form-error': Error
},
props: {
label: String,
labelvalue: String,
inputplaceholder: String,
inputname: String,
inputclassname: String,
inputid: String,
validation: String
},
methods: {
handleTitle: function (evt) {
this.inputvalue = evt.target.value
},
}
}
孩子的孩子:
<input type="text"
v-on:input="updateValue($event)"
v-validate="validation"
:placeholder="inputplaceholder"
:name="inputname"
:value="inputvalue"
:class="{
'form-control':'form-control',
'alert alert-danger': errors.has(inputname),
'alert alert-success': $validator.fields.find({ name: inputname })
&& $validator.fields.find({ name: inputname }).flags.dirty
&& !errors.has(inputname)
}"
:id="inputid"
>
<script>
export default {
inject: ['$validator'],
props: {
inputplaceholder: String,
inputname: String,
inputvalue: String,
inputclassname: String,
inputid: String,
validation: String
},
methods: {
updateValue: function (evt) {
this.$emit('input', evt)
}
}
}
</script>
【问题讨论】:
-
你能继续传播事件吗?
-
@zero298 是什么意思?
-
我的意思是哈苏的回答试图摆出什么姿势。让孙子发射给孩子,让孩子发射给祖父母。
-
查看我的更新代码@zero298
标签: vue.js