VUE v-for循環(huán)中每個item節(jié)點動態(tài)綁定不同函數(shù)的實例
一. 業(yè)務(wù)場景:
一個title 處 可能有 一個或多個按鈕, 按鈕對應(yīng)不同的響應(yīng)事件
二. 思路 :
按鈕個數(shù) 根據(jù)傳入的數(shù)據(jù)length 來循環(huán)渲染, 每條數(shù)據(jù)對應(yīng)的事件名稱 通過動態(tài)綁定
三. 封裝組件
1. 視圖層面

2. 代碼部分
2.1 結(jié)構(gòu)部分

<!-- 多個button組件--> <titleAddBtn :addBtnList="addBtnList" @clkCallBk="listenCall"></titleAddBtn>
2.2 JS部分
2.2.1 引入組件
import titleAddBtn from '@/components/titleAddBtn'
組件注冊:
components: { titleAddBtn },
2.2.2 傳入數(shù)據(jù)
data() {
return {
addBtnList: [
{
title: '添加1',
icon: 'el-icon-circle-plus-outline',
methods: 'addItem'
},
{
title: '添加2',
icon: 'el-icon-circle-plus-outline',
methods: 'addItem2'
},
{
title: '添加3',
icon: 'el-icon-circle-plus-outline',
methods: 'addItem3'
}
],
}
}
2.2.2 傳入數(shù)據(jù)說明:
title 是 按鈕上的文字,
icon 傳入 elementui icon部分 提供的 class名
methods 傳入 在父組件中 定義的 對應(yīng)按鈕的函數(shù)方法名
2.2.3 監(jiān)聽 子組件點擊哪個按鈕(促發(fā)哪個函數(shù))
methods: {
listenCall(methodsWords) {
console.log('methodsWords', methodsWords)
this[methodsWords]()
},
}
2.2.4 這里的 this[methodsWords] 動態(tài)方法 指向 數(shù)據(jù)定義中的 addBtnList 的 methods
還需要添加
methods: {
addItem() {
console.log(11)
},
addItem2() {
console.log(112)
},
...
}
四. 總結(jié)
最后的 this[methodsWords]() 調(diào)用 不能夠?qū)懗?this.methodsWords()
五. 封裝的組件部分
<template>
<div>
<div v-for="item in addBtnList" class="add-btn" @click="clkCall(item.methods)">
<i class="add-btn-i" :class="item.icon"></i>
<div>{{item.title}}</div>
</div>
</div>
</template>
<script>
export default {
name: 'titleAddBtn',
props: ['addBtnList'],
methods: {
clkCall(methodsWords) {
this.$emit('clkCallBk', methodsWords)
}
}
}
</script>
以上這篇VUE v-for循環(huán)中每個item節(jié)點動態(tài)綁定不同函數(shù)的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue使用NProgress實現(xiàn)頁面頂部的進度條顯示效果
這篇文章主要介紹了vue Nprogress頁面頂部進度條功能實現(xiàn),NProgress是頁面跳轉(zhuǎn)是出現(xiàn)在瀏覽器頂部的進度條,本文通過實例代碼給大家講解,需要的朋友可以參考下2022-12-12
Vue實現(xiàn)騰訊云點播視頻上傳功能的實現(xiàn)代碼
這篇文章主要介紹了Vue實現(xiàn)騰訊云點播視頻上傳功能的實現(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08
Vue Element前端應(yīng)用開發(fā)之根據(jù)ABP后端接口實現(xiàn)前端展示
本篇著重介紹基于ABP后端接口信息,實現(xiàn)對前端界面的開發(fā)工作。2021-05-05

