解決element UI 組件的change等事件自定義傳參的問題

問題描述:以change事件為例授艰,在一個(gè)循環(huán)的標(biāo)簽里插入單選按鈕組败砂,改變選項(xiàng)則觸發(fā)change事件赌渣,在某些情況下change方法執(zhí)行的操作可能需要單選按鈕組的索引以便處理不同的操作。

1.elemntui官方單選按鈕組組件
<el-radio-group v-model="item.model" @change="changeBarStatus" size="medium">
         <el-radio-button label="chartLeft" >啟動(dòng)耗時(shí)分布</el-radio-button>
         <el-radio-button label="chartRight">啟動(dòng)耗時(shí)最差5款</el-radio-button>
</el-radio-group>
<script>
export default {
    data(){
    return {
        barIdModelList: [
            {id: 'startTimeEchart', model: 'chartLeft'},
            {id: 'cpuUsedEchart', model: 'chartRight'},
            {id: 'memUsedEchart', model: 'chartLeft'},
        ],
    }
  },
  methods: {
      changeBarStatus(label) {
          console.log(label)//選中的 Radio label 值   'chartLeft'或者'chartRight'
      }
  }
}
</script>
2. 在循環(huán)中插入單選按鈕組并傳入自定義參數(shù)item昌犹,index(改進(jìn)前)
<div class="device-item" v-for="(item, index) in barIdModelList" :key="index">
                <div style="margin-top: 20px">
                    <el-radio-group v-model="item.model" @change="changeBarStatus(label, item, index)" size="medium">
                        <el-radio-button label="chartLeft" >啟動(dòng)耗時(shí)分布</el-radio-button>
                        <el-radio-button label="chartRight">啟動(dòng)耗時(shí)最差5款</el-radio-button>
                    </el-radio-group>
                </div>
                <div class="device-charts" :id="item.id">
                    
                </div>
            </div>
<script>
export default {
  data(){
    return {
        barIdModelList: [
            {id: 'startTimeEchart', model: 'chartLeft'},
            {id: 'cpuUsedEchart', model: 'chartRight'},
            {id: 'memUsedEchart', model: 'chartLeft'},
        ],
    }
  },
  methods: {
      changeBarStatus(label坚芜, item, index) {
          console.log(label)//undefined
          console.log(item)//對(duì)應(yīng)index的item
          console.log(index)//當(dāng)前觸發(fā)change事件的索引
      }
  }
}
</script>

通過打印上面的參數(shù)發(fā)現(xiàn)label為undefined,也就是說選中Radio的label 值并沒有傳遞過來斜姥,進(jìn)行如下改進(jìn):

3. 在循環(huán)中插入單選按鈕組并傳入自定義參數(shù)item鸿竖,index(改進(jìn)后)
<div class="device-item" v-for="(item, index) in barIdModelList" :key="index">
                <div style="margin-top: 20px">
                    <el-radio-group v-model="item.model" @change="((label)=>{changeBarStatus(label, item, index)})" size="medium">
                        <el-radio-button label="chartLeft" >啟動(dòng)耗時(shí)分布</el-radio-button>
                        <el-radio-button label="chartRight">啟動(dòng)耗時(shí)最差5款</el-radio-button>
                    </el-radio-group>
                </div>
                <div class="device-charts" :id="item.id">
                    
                </div>
            </div>
<script>
export default {
  data(){
    return {
        barIdModelList: [
            {id: 'startTimeEchart', model: 'chartLeft'},
            {id: 'cpuUsedEchart', model: 'chartRight'},
            {id: 'memUsedEchart', model: 'chartLeft'},
        ],
    }
  },
  methods: {
      changeBarStatus(label沧竟, item, index) {
          console.log(label)//對(duì)應(yīng)綁定的label值,'chartLeft'或者'chartRight'
          console.log(item)//對(duì)應(yīng)index的item
          console.log(index)//當(dāng)前觸發(fā)change事件的索引
      }
  }
}
</script>

以上就是自定義傳參的解決辦法缚忧,其核心就一行代碼

@change="((label)=>{changeBarStatus(label, item, index)})"

總結(jié)就是以閉包的形式觸發(fā)函數(shù)調(diào)用即可

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末悟泵,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子闪水,更是在濱河造成了極大的恐慌糕非,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件球榆,死亡現(xiàn)場離奇詭異朽肥,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)持钉,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門衡招,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人每强,你說我怎么就攤上這事始腾。” “怎么了舀射?”我有些...
    開封第一講書人閱讀 156,723評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵窘茁,是天一觀的道長。 經(jīng)常有香客問我脆烟,道長山林,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,357評(píng)論 1 283
  • 正文 為了忘掉前任邢羔,我火速辦了婚禮驼抹,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拜鹤。我一直安慰自己框冀,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評(píng)論 5 384
  • 文/花漫 我一把揭開白布敏簿。 她就那樣靜靜地躺著明也,像睡著了一般。 火紅的嫁衣襯著肌膚如雪惯裕。 梳的紋絲不亂的頭發(fā)上温数,一...
    開封第一講書人閱讀 49,760評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音蜻势,去河邊找鬼撑刺。 笑死,一個(gè)胖子當(dāng)著我的面吹牛握玛,可吹牛的內(nèi)容都是我干的够傍。 我是一名探鬼主播甫菠,決...
    沈念sama閱讀 38,904評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼冕屯!你這毒婦竟也來了寂诱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤愕撰,失蹤者是張志新(化名)和其女友劉穎刹衫,沒想到半個(gè)月后醋寝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體搞挣,經(jīng)...
    沈念sama閱讀 44,118評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評(píng)論 2 325
  • 正文 我和宋清朗相戀三年音羞,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了囱桨。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,599評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡嗅绰,死狀恐怖舍肠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情窘面,我是刑警寧澤翠语,帶...
    沈念sama閱讀 34,264評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站财边,受9級(jí)特大地震影響肌括,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜酣难,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評(píng)論 3 312
  • 文/蒙蒙 一谍夭、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧憨募,春花似錦紧索、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至尾膊,卻和暖如春媳危,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背眯停。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評(píng)論 1 264
  • 我被黑心中介騙來泰國打工济舆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人莺债。 一個(gè)月前我還...
    沈念sama閱讀 46,286評(píng)論 2 360
  • 正文 我出身青樓滋觉,卻偏偏與公主長得像签夭,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子椎侠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對(duì)...
    cosWriter閱讀 11,090評(píng)論 1 32
  • “哎我纪,等會(huì)兒慎宾,你不要走∏诚ぃ”安迪上去阻攔趟据。 “放手∈踅。”季梓筱還是不愿意多說一個(gè)字汹碱。 安迪意識(shí)到自己失禮,尷尬的收回了...
    慕櫻吶閱讀 319評(píng)論 0 1
  • ThinkPHP3 的配置 ThinkPHP5 的配置 原生 pdo sqlsrv 連接 原生 sqlsrv 連接...
    guanguans閱讀 2,782評(píng)論 0 4
  • 十二月屬于沉寂的季節(jié)荞估,萬物似乎早已睡著咳促,還好路面上還好有人活動(dòng),熙熙攘攘勘伺。流浪狗沿著街頭尋找食物跪腹,來到肉鋪面前,剛...
    逍遙魂靈閱讀 512評(píng)論 0 0
  • 本文的例子來自 Pyro4 官網(wǎng)的 tutorial飞醉。這年頭冲茸,Python的包各種強(qiáng)大,通過Pyro可以輕松進(jìn)行分...
    csdongxian閱讀 2,263評(píng)論 0 0