javascript - 子元件觸發父元件的自訂事件 父元件無任何反應
大家讲道理
大家讲道理 2017-07-05 11:03:26
0
3
995

以下為子元件 @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) 並未執行

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回覆(3)
女神的闺蜜爱上我

你直接這麼寫有問題的吧
應該是

<order-type @showChange='alertFun'></order-type>     
父组件有一个方法
methods: {
    alertFun () {
        alert(2)
    }
}

這裡應該傳遞的是父元件方法的一個函數名,而不是直接寫alert(2)

女神的闺蜜爱上我

應該是這塊出問題了

伊谢尔伦

以下為子元件 @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) 并未执行 
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板