Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mes-ui
Project
Project
Details
Activity
Releases
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
周远喜
mes-ui
Commits
3f768f39
Commit
3f768f39
authored
May 08, 2020
by
周远喜
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ook
parent
26eaf6b0
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
172 additions
and
13 deletions
+172
-13
productSelect.vue
components/page/productSelect.vue
+6
-5
resourceSelect.vue
components/page/resourceSelect.vue
+110
-0
tree-select.vue
iview-pro/src/components/tree-select/tree-select.vue
+2
-2
test.vue
pages/test.vue
+10
-6
resource.vue
pages/test/resource.vue
+44
-0
No files found.
components/page/productSelect.vue
View file @
3f768f39
...
@@ -31,9 +31,9 @@ export default {
...
@@ -31,9 +31,9 @@ export default {
data
.
map
(
u
=>
{
data
.
map
(
u
=>
{
u
.
title
=
u
.
name
;
u
.
title
=
u
.
name
;
u
.
value
=
u
.
id
;
u
.
value
=
u
.
id
;
//
u.expand = true;
u
.
expand
=
true
;
//
u.selected = false;
u
.
selected
=
false
;
//
u.checked = false;
u
.
checked
=
false
;
if
(
u
.
children
)
{
if
(
u
.
children
)
{
setTree
(
u
.
children
);
setTree
(
u
.
children
);
}
}
...
@@ -47,7 +47,7 @@ export default {
...
@@ -47,7 +47,7 @@ export default {
value
:
[
String
,
Number
,
Array
],
value
:
[
String
,
Number
,
Array
],
placeholder
:
{
placeholder
:
{
type
:
String
,
type
:
String
,
default
:
"请选择
部门
"
default
:
"请选择
产品
"
},
},
multiple
:
{
multiple
:
{
type
:
Boolean
,
type
:
Boolean
,
...
@@ -59,7 +59,7 @@ export default {
...
@@ -59,7 +59,7 @@ export default {
}
}
},
},
methods
:
{
methods
:
{
change
(
v
)
{
change
(
v
,
item
,
items
)
{
console
.
log
(
v
);
console
.
log
(
v
);
this
.
dep
=
v
;
this
.
dep
=
v
;
var
item
;
var
item
;
...
@@ -70,6 +70,7 @@ export default {
...
@@ -70,6 +70,7 @@ export default {
item
=
items
[
0
];
item
=
items
[
0
];
}
}
this
.
$emit
(
"on-change"
,
v
,
item
);
this
.
$emit
(
"on-change"
,
v
,
item
);
console
.
log
(
v
,
item
,
items
)
}
}
},
},
watch
:
{
watch
:
{
...
...
components/page/resourceSelect.vue
0 → 100644
View file @
3f768f39
<
template
>
<Cascader
:data=
"data"
v-model=
"name"
@
on-change=
"change"
trigger=
"hover"
></Cascader>
</
template
>
<
script
>
export
default
{
name
:
"roleSelect"
,
model
:
{
prop
:
"value"
,
event
:
"on-change"
},
data
()
{
return
{
name
:
this
.
value
,
data
:
[],
resources
:
[],
types
:
[]
};
},
mounted
()
{
//
this
.
types
=
this
.
$store
.
getters
.
dictionaryByKey
(
"aps.resource.type"
);
let
url
=
`
${
systemUrl
}
/planresource/list`
;
this
.
$api
.
post
(
url
,
{
pageSize
:
2000
})
.
then
(
r
=>
{
this
.
resources
=
r
.
result
;
this
.
init
();
});
},
props
:
{
value
:
[
Array
]
},
methods
:
{
init
(
data
)
{
var
data
=
[];
this
.
types
.
map
(
u
=>
{
let
item
=
{
label
:
u
.
name
,
value
:
u
.
code
};
var
children
=
this
.
resources
.
filter
(
r
=>
{
return
r
.
type
==
u
.
code
;
});
if
(
children
&&
children
.
length
>
0
)
{
var
ul
=
[];
children
.
map
(
u
=>
{
ul
.
push
({
label
:
u
.
title
,
value
:
u
.
id
});
});
item
.
children
=
ul
;
}
else
{
item
.
disabled
=
true
}
data
.
push
(
item
);
});
this
.
data
=
data
;
},
change
(
value
,
selected
)
{
// console.log(event)
this
.
$emit
(
"on-change"
,
value
,
selected
);
},
//获取所有的选中项
getSelectItems
()
{
var
items
=
[];
this
.
value
.
forEach
(
v
=>
{
var
item
=
this
.
dic
.
filter
(
u
=>
u
.
value
==
v
);
if
(
item
&&
item
[
0
])
{
items
.
push
(
item
[
0
]);
}
});
return
items
;
},
//获取所有选中项的名称
getSelectNames
()
{
var
names
=
[];
this
.
getSelectItems
().
forEach
(
v
=>
{
names
.
push
(
v
.
label
);
});
return
names
;
}
},
computed
:
{
dic
()
{
let
result
=
[];
this
.
data
.
forEach
(
u
=>
{
result
.
push
({
value
:
u
.
id
,
label
:
u
.
name
});
});
return
result
;
}
},
watch
:
{
value
:
{
handler
(
v
,
o
)
{
this
.
name
=
v
;
},
deep
:
true
}
}
};
</
script
>
\ No newline at end of file
iview-pro/src/components/tree-select/tree-select.vue
View file @
3f768f39
...
@@ -123,8 +123,8 @@
...
@@ -123,8 +123,8 @@
this
.
isChangeValueInTree
=
true
;
this
.
isChangeValueInTree
=
true
;
this
.
$emit
(
'input'
,
this
.
currentValue
);
this
.
$emit
(
'input'
,
this
.
currentValue
,
currentNode
,
selectedNodes
);
this
.
$emit
(
'on-change'
,
this
.
currentValue
);
this
.
$emit
(
'on-change'
,
this
.
currentValue
,
currentNode
,
selectedNodes
);
this
.
dispatch
(
'FormItem'
,
'on-form-change'
,
this
.
currentValue
);
this
.
dispatch
(
'FormItem'
,
'on-form-change'
,
this
.
currentValue
);
},
},
handleUpdateTreeNodes
(
data
,
isInit
=
false
)
{
handleUpdateTreeNodes
(
data
,
isInit
=
false
)
{
...
...
pages/test.vue
View file @
3f768f39
<
style
lang=
"less"
>
<
style
lang=
"less"
>
.test_layout {
.test_layout {
height: 100%;
height: 100%;
.bg1
{
.bg1
{
background:#fefefe
;
background: #fefefe
;
}
}
// &.fg {
// &.fg {
// // overflow: auto;
// // overflow: auto;
// }
// }
...
@@ -21,17 +21,21 @@
...
@@ -21,17 +21,21 @@
<div
class=
"layout-assistant"
>
<div
class=
"layout-assistant"
>
<MenuItem
name=
"1"
to=
"/test/user"
>
人员选择
</MenuItem>
<MenuItem
name=
"1"
to=
"/test/user"
>
人员选择
</MenuItem>
<MenuItem
name=
"2"
to=
"/test/com"
>
异步组件
</MenuItem>
<MenuItem
name=
"2"
to=
"/test/com"
>
异步组件
</MenuItem>
<MenuItem
name=
"4"
to=
"/test/resource"
>
资源选择
</MenuItem>
<MenuItem
name=
"3"
>
Option 3
</MenuItem>
<MenuItem
name=
"3"
>
Option 3
</MenuItem>
</div>
</div>
</Menu>
</Menu>
</div>
</div>
<div
class=
"fg"
>
<div
class=
"fg"
>
<nuxt-child></nuxt-child>
<nuxt-child></nuxt-child>
</div>
</div>
</div>
</div>
</
template
>
</
template
>
<
script
>
<
script
>
export
default
{
export
default
{
layout
:
"empty"
layout
:
"empty"
,
async
fetch
({
store
,
params
})
{
await
store
.
dispatch
(
"loadDictionary"
);
// 加载数据字典
}
};
};
</
script
>
</
script
>
\ No newline at end of file
pages/test/resource.vue
0 → 100644
View file @
3f768f39
<
template
>
<div>
<ResourceSelect
v-model=
"model"
@
on-change=
"change"
></ResourceSelect>
<p>
{{
model
}}
</p>
<p>
{{
text
}}
</p>
<Button
@
click=
"set"
>
赋值
</Button>
<ProductSelect
v-model=
"product"
@
on-change=
"pchange"
></ProductSelect>
</div>
</
template
>
<
script
>
import
ResourceSelect
from
"@/components/page/resourceSelect"
export
default
{
components
:{
ResourceSelect
},
name
:
''
,
data
()
{
return
{
model
:[],
text
:
""
,
product
:
""
,
}
},
methods
:{
change
(
v
,
items
){
this
.
text
=
items
.
map
(
u
=>
u
.
label
).
join
(
'/'
);
},
set
(){
this
.
model
=
[
"1"
,
91
];
},
pchange
(
v
){
// this.text=items.map(u=>u.label).join('/');
},
}
}
</
script
>
<
style
lang=
"less"
>
</
style
>
\ No newline at end of file
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