Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
Y
yn-science-front
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
徐俊
yn-science-front
Commits
dd4bbb3e
Commit
dd4bbb3e
authored
Mar 21, 2025
by
徐俊
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
xujun
parent
348ac648
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
24 additions
and
3 deletions
+24
-3
selectItem.vue
src/views/assign/components/selectItem.vue
+24
-3
No files found.
src/views/assign/components/selectItem.vue
View file @
dd4bbb3e
...
...
@@ -5,7 +5,7 @@
</div>
<div
class=
"select-content"
>
<ul
class=
"data-list-content"
>
<li
v-for=
"(item,
index) in dataList"
:key=
"item.key
"
@
click=
"onChange(item,index)"
class=
"data-list-content-item"
>
<li
v-for=
"(item,
index) in dataList"
:key=
"item.key || 'item-' + index
"
@
click=
"onChange(item,index)"
class=
"data-list-content-item"
>
<input
type=
"checkbox"
class=
"list-checkbox-input"
:checked=
"item.selected"
>
<span
style=
"font-size:8pt;"
:title=
"item.description"
:class=
"
{'font-red':item.disabled}">
<span>
{{
item
.
title
}}
<span
style=
"font-style: italic;color: #8e99a5;"
:class=
"
{'font-red':item.disabled}">(
{{
item
.
description
}}
)
</span></span>
...
...
@@ -106,13 +106,34 @@ export default {
}
this
.
indeterminate
=
!!
this
.
nowSelectKeys
.
length
&&
this
.
nowSelectKeys
.
length
<
this
.
dataList
.
length
this
.
checkAll
=
this
.
nowSelectKeys
.
length
===
this
.
dataList
.
length
&&
this
.
nowSelectKeys
.
length
>
0
},
ensureUniqueKeys
()
{
const
keyMap
=
new
Map
();
let
hasDuplicates
=
false
;
this
.
dataList
.
forEach
((
item
,
index
)
=>
{
if
(
!
item
.
key
)
{
item
.
key
=
'generated-'
+
index
;
}
else
if
(
keyMap
.
has
(
item
.
key
))
{
console
.
warn
(
`发现重复键:
${
item
.
key
}
,已自动修复`
);
item
.
key
=
item
.
key
+
'-'
+
index
;
hasDuplicates
=
true
;
}
keyMap
.
set
(
item
.
key
,
true
);
});
if
(
hasDuplicates
)
{
this
.
initData
();
}
}
},
watch
:
{
dataList
:
{
handler
(
dataList
)
{
this
.
initData
()
handler
(
dataList
)
{
this
.
ensureUniqueKeys
();
this
.
initData
();
},
immediate
:
true
},
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment