elementui?el-select?change事件傳參問題
elementui el-select change事件傳參
需求:當(dāng)用戶選擇select的時候change事件需求獲取到當(dāng)前的整個值
:value的時候把整個item都傳進(jìn)去,用value-key接收就會傳給change事件
<el-select v-model="ruleForm.userName" :loading="commissionerListLoading" value-key="item" class="control" placeholder="請選擇" @change="handleCommissioer">
<el-option v-for="(item,idx) of commissionerList" :key="idx" :label="item.userName" :value="item"/>
</el-select>但是會發(fā)現(xiàn)當(dāng)賦值的時候數(shù)據(jù)有變但是視圖不變;可以用change中修改
// 選擇專員姓名
handleCommissioer(val) {
console.log(val)
this.ruleForm.userName = val.userName
this.ruleForm.userCode = val.userCode
this.getLifeInsurance(val.userCode)
},
el-select的change事件,傳遞多個值
下拉框列表的change事件,自帶一個參數(shù),就是為下拉框選中的值,但是有時候我們需要在帶一個參數(shù)過去,就會覆蓋原來的參數(shù),要怎么辦?
這個時候我們可以借助箭頭函數(shù),完美解決傳參問題。
代碼如下:
// An highlighted block
<el-table border stripe :data="searchForm.taxPlanEntityList" style="width: 100%">
? <el-table-column label="公司名稱" align="center" min-width="140" show-overflow-tooltip>
? ? <template slot-scope="{row,$index}" >
? ? ? <el-select v-model="row.deptId" placeholder="請選擇" @change="(deptId) => handleChangeDeptId(deptId, $index)">
? ? ? ? ?<el-option v-for="item in projectList" :label="item.name" :value="item.deptId" :key="item.deptId"></el-option>
? ? ? ?</el-select>
? ? ?</template>
? ?</el-table-column>
?</el-table>方法如下:
handleChangeDeptId(deptId, index) {
? ?console.log(deptId, index) // 這個就是你傳過來的值了
}總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue?跳轉(zhuǎn)頁面$router.resolve和$router.push案例詳解
這篇文章主要介紹了vue?跳轉(zhuǎn)頁面$router.resolve和$router.push案例詳解,這樣實現(xiàn)了既跳轉(zhuǎn)了新頁面,又不會讓后端檢測到頁面鏈接不安全之類的,需要的朋友可以參考下2023-10-10

