<el-transfer style="width:80%;margin:0 auto" v-model="selectedTransfer" :data="noRelation"
@change="selectedData" :titles="dialogModel == 0 ? ['关联选手','已选关联选手'] : ['关联战队','已选关联战队']"></el-transfer>
这里的v-model就是右侧数据回显的值,是个回显数据key的数组
:data 绑定的数据noRelation 也是一个数组,需要在函数data()中声明,而且右侧框中的数据必须是在左侧数据中,否则不会显示(左侧的数据是全部数据,elementUi内部对左侧已经进行去重了)
data(){
return {
noRelation: [],
relationIds: [],
dialogModel: "",
selectedTransfer: [],
}
}
<script>
//获取关联选手/战队列表
relationTeam(obj) {
this.noRelation = []
this.selectedTransfer = []
this.sceneId = obj.id;
this.dialogModel = obj.sceneModel
apiT.getList({
teamName: "",
startPosition: 1,
maxResult: 999
}).then(data => {
if (data.resultData) {
data.resultData.forEach(item => {
this.noRelation.push({ key: item.id, label: item.teamName })
})
}
})
api.getSelecteds(obj.id).then(data => {
this.dialogVisible = true
data.includeRelations.forEach(item => {
this.selectedTransfer.push(item.relationId)
})
})
},
</script>