【发布时间】:2019-04-27 21:06:13
【问题描述】:
我使用v-for 语法制作表单。当我只写方法名称时,我成功地从子组件获取百分比数据。
父组件
<div v-for="(item, idx) in recipients"
:key="idx">
<range-input @sendValue="getPercentFromChild">
</range-input>
</div>
...
getPercentFromChild(percent) {
console.log(percent); // 50
},
子组件
<div>
<input type="range"
value="0"
@change="sendValue">
</div>
...
export default {
...
methods: {
sendValue() {
this.$emit('sendValue', 50);
},
}
}
那么,如何将子数据(百分比)和父数据(indx)传递给方法?
像这样,父组件
<div v-for="(item, idx) in recipients"
:key="idx">
<range-input :currentPercent="0"
@sendValue="getPercentFromChild(idx, percent)">
</range-input>
</div>
...
getPercentFromChild(idx, percent) {
console.log(idx, percent); // 0, undefined
},
【问题讨论】: