亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

elementUI里CheckBox組件的change回調如何在使用自定義傳參的條件下保留默認傳參?

elementUI里CheckBox組件的change回調如何在使用自定義傳參的條件下保留默認傳參?

慕尼黑8549860 2019-03-19 17:15:01
我想在勾選的時候,傳遞該行數據item,同時根據CheckBox更新后value的值向數組selectedId中插入item中的uid。官方文檔里面只有一個默認的回調參數,我想在這基礎上再多傳遞一個參數,有什么辦法么?下面是我的代碼...<div id="app">    <div v-for="item in stylesData">        <el-checkbox v-model="item.checked" @change="selecteChange(item)"></el-checkbox>        <img v-bind:src="item.src"/>        <p>{{item.text}}</p>    </div></div><script>    const app = new Vue({        el: '#app',        data: function(){            return {                selectedId: [],        //選中后的UID數組                stylesData: [{                    uid: 1,                    checked: false,                    src: 'xxx.jpg',                    text: '一段描述'                },{                    uid: 2,                    checked: false,                    src: 'xxxx.jpg',                    text: '二段描述'                },{                    uid: 3,                    checked: false,                    src: 'xxxxx.jpg',                    text: '三段描述'                }]            }        },        methods: {            selecteChange: function(item,value){                console.log(item);                console.log(value);                if(value == true){                    app.selectedId.push(item.uid);                }            }        }    });</script>
查看完整描述

2 回答

?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊


同問,有什么辦法保留默認傳參


找到解決辦法了。


@change="checked=>方法名(checked,你想傳的額外參數...)"

實例


<el-checkbox :disabled="scope.row.disable" v-model="scope.row.cashStatus"

                       @change="checked=>checkRow(checked, scope.row)"></el-checkbox>

                       

checkRow(checked,row) {

    console.log(`checked:${checked}`)

    console.log(`row:${JSON.stringify(row)}`)

  },

控制臺結果:


checked:true

row:{"name":"FB 周日","disable":false,"cashStatus":true,"netStatus":false}


查看完整回答
反對 回復 2019-04-04
?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

@change="selecteChange(a,b,c,d...)"


selecteChange(a,b,c,d...){

    //...

}

這種形式是自定義傳參,還有一種是默認傳參


@change="selecteChange"


selecteChange(val,e){

    //...

}

你用自定義傳參就可以了,傳入一個item參數不就夠了嗎?value根據item.checked可以獲取到。


查看完整回答
反對 回復 2019-04-04
  • 2 回答
  • 0 關注
  • 7790 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號