校验队长的唯一性

GST002_H5
Ly 2 months ago
parent b0c0b2a9db
commit 642f0eaae5
  1. 61
      src/views/registrationGroup/components/stuList.vue

@ -34,19 +34,17 @@
<span style="margin-left: 10px">是否队长</span> <span style="margin-left: 10px">是否队长</span>
</template> </template>
<template #default="{ row }"> <template #default="{ row }">
<el-cascader <el-select v-model="row.captain" @update:modelValue="(arr: any[]) => {row.captain = arr[0];console.log(arr);
:modelValue="row.captain"
@update:modelValue="(arr: any[]) => {row.captain = arr[0];console.log(arr);
}" }"
:options="options" @change="()=>checkUniqueness(row)"
:disabled="isDisable" :options="options">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
/> />
<!-- <el-cascader </el-select>
:modelValue="row.captain"
@update:modelValue="checkUniqueness(row)"
:options="options"
:disabled="isDisable"
/> -->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column> <el-table-column>
@ -123,28 +121,27 @@ const options = [
label: '否', label: '否',
}, },
] ]
// //
// const checkUniqueness = async(row:any) => { const checkUniqueness = (row:any) => {
// const currentCaptain = row.captain; // console.log(row);
// const isUnique = tableData.every ((r) => { //tableData
// // console.log(tableData,'table'); const count = tableData.filter(item => item.captain === '1').length
// console.log(row.captain,'row'); // console.log(count,'count');
// console.log(r.captain,'r.captain'); //
if(count === 2){
// return r.captain !== currentCaptain || r.userId == row.userId; // //
// }); ElMessage({
message: '已有队长人选!',
// if (!isUnique) { type: 'error',
// ElMessage({ })
// message: '!', row.captain = '0';
// type: 'error', }else if(count === 0){
// }) ElMessage({
// // row.captain = '1'; message: '请选择队长人选!',
type: 'error',
// } })
// }; }
}
// //
const tableData = reactive<any[]>([]) const tableData = reactive<any[]>([])
onMounted(() => { onMounted(() => {

Loading…
Cancel
Save