vue 阻止el-radio事件冒泡


原代碼
<li v-for="(item, index) in listData" :key="index" @click="changeGame(item)">
  <span><img :src="item.portrait" :alt="item.name" /></span>
  <span>{{ item.name }}</span>
  <span>
    <el-radio
      v-model="selected"
      :label="item.id"
    ></el-radio>
  </span>
</li>
點擊 el-radio 的時候發現 changeGame 觸發了兩次,最后做了以下修改。
<li v-for="(item, index) in listData" :key="index" @click="changeGame(item)">
  <span><img :src="item.portrait" :alt="item.name" /></span>
  <span>{{ item.name }}</span>
  <span @click.stop>
    <el-radio
      @change="changeGame(item)"
      v-model="selected"
      :label="item.id"
    ></el-radio>
  </span>
</li>
data() {
    return {
      selected: 0,
      listData: []
    };
},
methods: {
    changeGame(item) {
        console.log(item);
        this.selected = item.id;
    }
}
算是比較折中的方案,如果有更好的方案歡迎告知。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM