參照?https://blog.csdn.net/m0_38038870/article/details/123418588
1.用Arry.find方法
<el-select v-model="value" placeholder="請選擇" @change="getLabel">
? ? <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
? </el-option>
</el-select>
getLabel(value) {
? ? console.log(value);
? ? ? let obj = {};
? ? ? obj = this.options.find((item)=>{
? ? ? ? ? return item.value === value;
? ? ? });
? ? ? console.log(obj.label);
}
2.通過綁定原生click事件來進行傳參
<el-select v-model="value" placeholder="請選擇">
? ? <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" @click.native="labelClick(item.label)">
? ? </el-option>
? </el-select>
labelClick(data){
? console.log(data);
}
3.通過 $refs 拿到 el-select 組件實例,該實例擁有 selectedLabel 屬性,為當前選中的 label。
或者可以通過 selected 拿到選中的 option 的組件實例,擁有 label 和 value 兩個屬性。
<el-select ref="selectLabel" v-model="value" placeholder="請選擇" @change="getLabel">
? ? <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
? ? </el-option>
getLabel(){
this.$nextTick(()=>{
? console.log(this.$refs.selectLabel.selectedLabel);
? console.log(this.$refs.selectLabel.selected.label);
})
}