以下為子元件 @change='showChange'為子元件事件
以下範本註冊為 order-type元件
<template>
<select name="dType" class="form-control" v-el:select @change='showChange'>
<option value="" v-if="type=='selectAll'">全部</option>
<option v-for="branch in branchList" :value="branch.id" track-by="$index">
{{branch.name}}
</option>
</select>
</template>
以下為子元件方法:
showChange(event) {
for (let branch of this.branchList) {
if (branch['id'] === event.target.value) {
this.$emit('showChange',branch['prefix']);
}
}
以下是父元件
<order-type @showChange='alert(2)'></order-type>
但alert(2) 並未執行
女神的闺蜜爱上我2017-07-05 11:05:26
你直接這麼寫有問題的吧
應該是
<order-type @showChange='alertFun'></order-type>
父组件有一个方法
methods: {
alertFun () {
alert(2)
}
}
這裡應該傳遞的是父元件方法的一個函數名,而不是直接寫alert(2)
伊谢尔伦2017-07-05 11:05:26
以下為子元件 @change='showChange'為子元件事件
以下範本註冊為 order-type元件
<option value="" v-if="type=='selectAll'">全部</option>
<option v-for="branch in branchList" :value="branch.id" track-by="$index">
{{branch.name}}
</option>
以下為子組件方法:
showChange(event) {
for (let branch of this.branchList) {
if (branch['id'] === event.target.value) {
/注意此行的修改/ this.$emit('parentChage',branch['prefix']);
}
}
以下是父组件
<order-type @showChange='alert(2)'></order-type>
但alert(2) 并未执行