Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
Y
yudao-cloud
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
hblj
yudao-cloud
Commits
b95c61e2
提交
b95c61e2
authored
5月 03, 2019
作者:
sin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
admin 菜单添加 search 操作
上级
8f15e2c5
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
78 行增加
和
32 行删除
+78
-32
resourceList.js
admin-web/src/models/admin/resourceList.js
+21
-4
ResourceList.js
admin-web/src/pages/Admin/ResourceList.js
+57
-28
没有找到文件。
admin-web/src/models/admin/resourceList.js
浏览文件 @
b95c61e2
import
{
message
}
from
'antd'
;
import
{
message
}
from
'antd'
;
import
{
addResource
,
updateResource
,
deleteResource
,
resourceTree
}
from
'../../services/admin'
;
import
{
addResource
,
updateResource
,
deleteResource
,
resourceTree
}
from
'../../services/admin'
;
const
buildSelectTree
=
list
=>
{
return
list
.
map
(
item
=>
{
let
children
=
[];
if
(
item
.
children
)
{
children
=
buildSelectTree
(
item
.
children
);
}
return
{
title
:
item
.
displayName
,
value
:
item
.
displayName
,
key
:
item
.
id
,
children
,
};
});
};
export
default
{
export
default
{
namespace
:
'resourceList'
,
namespace
:
'resourceList'
,
state
:
{
state
:
{
list
:
[],
list
:
[],
selectTree
:
[],
},
},
effects
:
{
effects
:
{
...
@@ -47,18 +63,19 @@ export default {
...
@@ -47,18 +63,19 @@ export default {
message
.
info
(
'查询成功!'
);
message
.
info
(
'查询成功!'
);
yield
put
({
yield
put
({
type
:
'treeSuccess'
,
type
:
'treeSuccess'
,
payload
:
{
payload
:
response
.
data
,
list
:
response
.
data
,
},
});
});
},
},
},
},
reducers
:
{
reducers
:
{
treeSuccess
(
state
,
{
payload
})
{
treeSuccess
(
state
,
{
payload
})
{
const
resultData
=
payload
;
const
selectTree
=
buildSelectTree
(
resultData
);
return
{
return
{
...
state
,
...
state
,
...
payload
,
list
:
resultData
,
selectTree
,
};
};
},
},
},
},
...
...
admin-web/src/pages/Admin/ResourceList.js
浏览文件 @
b95c61e2
...
@@ -3,18 +3,39 @@
...
@@ -3,18 +3,39 @@
import
React
,
{
PureComponent
,
Fragment
}
from
'react'
;
import
React
,
{
PureComponent
,
Fragment
}
from
'react'
;
import
{
connect
}
from
'dva'
;
import
{
connect
}
from
'dva'
;
import
moment
from
'moment'
;
import
moment
from
'moment'
;
import
{
Card
,
Form
,
Input
,
Select
,
Button
,
Modal
,
message
,
Table
,
Divider
}
from
'antd'
;
import
{
Card
,
Form
,
Input
,
Select
,
Button
,
Modal
,
message
,
Table
,
TreeSelect
,
Radio
,
Divider
,
}
from
'antd'
;
import
PageHeaderWrapper
from
'@/components/PageHeaderWrapper'
;
import
PageHeaderWrapper
from
'@/components/PageHeaderWrapper'
;
import
styles
from
'./ResourceList.less'
;
import
styles
from
'./ResourceList.less'
;
const
RadioGroup
=
Radio
.
Group
;
const
FormItem
=
Form
.
Item
;
const
FormItem
=
Form
.
Item
;
const
{
Option
}
=
Select
;
const
{
Option
}
=
Select
;
const
types
=
[
'未知'
,
'菜单'
,
'链接'
];
const
types
=
[
'未知'
,
'菜单'
,
'链接'
];
// 添加 form 表单
// 添加 form 表单
const
CreateForm
=
Form
.
create
()(
props
=>
{
const
CreateForm
=
Form
.
create
()(
props
=>
{
const
{
modalVisible
,
form
,
handleAdd
,
handleModalVisible
,
modalType
,
initValues
}
=
props
;
const
{
modalVisible
,
form
,
handleAdd
,
handleModalVisible
,
modalType
,
initValues
,
selectTree
,
}
=
props
;
const
okHandle
=
()
=>
{
const
okHandle
=
()
=>
{
form
.
validateFields
((
err
,
fieldsValue
)
=>
{
form
.
validateFields
((
err
,
fieldsValue
)
=>
{
...
@@ -43,47 +64,54 @@ const CreateForm = Form.create()(props => {
...
@@ -43,47 +64,54 @@ const CreateForm = Form.create()(props => {
okText
=
{
okText
}
okText
=
{
okText
}
onCancel
=
{()
=>
handleModalVisible
()}
onCancel
=
{()
=>
handleModalVisible
()}
>
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"
菜单展示名
"
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"
类型
"
>
{
form
.
getFieldDecorator
(
'displayName'
,
{
{
form
.
getFieldDecorator
(
'displayName'
,
{
rules
:
[{
required
:
true
,
message
:
'选择类型!'
,
min
:
2
}],
initialValue
:
initValues
.
type
||
1
,
})(
<
RadioGroup
>
<
Radio
value
=
{
1
}
>
菜单
<
/Radio
>
<
Radio
value
=
{
2
}
>
按钮
<
/Radio
>
<
/RadioGroup
>
)}
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"名称"
>
{
form
.
getFieldDecorator
(
'type'
,
{
rules
:
[{
required
:
true
,
message
:
'请输入菜单展示名字!'
,
min
:
2
}],
rules
:
[{
required
:
true
,
message
:
'请输入菜单展示名字!'
,
min
:
2
}],
initialValue
:
initValues
.
displayName
,
initialValue
:
initValues
.
displayName
,
})(
<
Input
placeholder
=
"
请输入
"
/>
)}
})(
<
Input
placeholder
=
"
显示名称
"
/>
)}
<
/FormItem
>
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"操作"
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"菜单KEY"
>
{
form
.
getFieldDecorator
(
'handler'
,
{
initialValue
:
initValues
.
handler
,
})(
<
Input
placeholder
=
"请输入"
/>
)}
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"资源名字"
>
{
form
.
getFieldDecorator
(
'name'
,
{
{
form
.
getFieldDecorator
(
'name'
,
{
rules
:
[{
required
:
true
,
message
:
'请输入资源名字!'
}],
rules
:
[{
required
:
true
,
message
:
'请输入资源名字!'
}],
initialValue
:
initValues
.
name
,
initialValue
:
initValues
.
name
,
})(
<
Input
placeholder
=
"
请输入
"
/>
)}
})(
<
Input
placeholder
=
"
菜单KEY 如:用户 USER
"
/>
)}
<
/FormItem
>
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"父级资源编号"
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"操作/路由"
>
{
form
.
getFieldDecorator
(
'handler'
,
{
initialValue
:
initValues
.
handler
,
})(
<
Input
placeholder
=
"操作/路由"
/>
)}
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"父级菜单"
>
{
form
.
getFieldDecorator
(
'pid'
,
{
{
form
.
getFieldDecorator
(
'pid'
,
{
rules
:
[{
required
:
true
,
message
:
'请输入父级编号!'
}],
rules
:
[{
required
:
true
,
message
:
'请输入父级编号!'
}],
initialValue
:
initValues
.
pid
,
initialValue
:
initValues
.
pid
,
})(
<
Input
placeholder
=
"请输入"
/>
)}
})(
<
span
>
根节点为
0
<
/span
>
<
TreeSelect
showSearch
style
=
{{
width
:
300
}}
dropdownStyle
=
{{
maxHeight
:
400
,
overflow
:
'auto'
}}
treeData
=
{
selectTree
}
placeholder
=
"选择父级菜单"
/>
)}
<
/FormItem
>
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"排序"
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"
菜单
排序"
>
{
form
.
getFieldDecorator
(
'sort'
,
{
{
form
.
getFieldDecorator
(
'sort'
,
{
rules
:
[{
required
:
true
,
message
:
'请输入菜单排序!'
}],
rules
:
[{
required
:
true
,
message
:
'请输入菜单排序!'
}],
initialValue
:
initValues
.
sort
,
initialValue
:
initValues
.
sort
,
})(
<
Input
placeholder
=
"请输入"
/>
)}
})(
<
Input
placeholder
=
"请输入"
/>
)}
<
/FormItem
>
<
/FormItem
>
<
FormItem
labelCol
=
{{
span
:
5
}}
wrapperCol
=
{{
span
:
15
}}
label
=
"资源类型"
>
{
form
.
getFieldDecorator
(
'type'
,
{
rules
:
[{
required
:
true
,
message
:
'请选择资源类型!'
}],
initialValue
:
1
,
})(
<
Select
showSearch
style
=
{
selectStyle
}
placeholder
=
"请选择"
>
<
Option
value
=
{
1
}
>
菜单
<
/Option
>
<
Option
value
=
{
2
}
>
Url
<
/Option
>
<
/Select
>
)}
<
/FormItem
>
<
/Modal
>
<
/Modal
>
);
);
});
});
...
@@ -167,7 +195,8 @@ class ResourceList extends PureComponent {
...
@@ -167,7 +195,8 @@ class ResourceList extends PureComponent {
}
}
render
()
{
render
()
{
const
{
list
}
=
this
.
props
;
const
{
list
,
resourceList
}
=
this
.
props
;
const
{
selectTree
}
=
resourceList
;
const
{
modalVisible
,
modalType
,
initValues
}
=
this
.
state
;
const
{
modalVisible
,
modalType
,
initValues
}
=
this
.
state
;
const
parentMethods
=
{
const
parentMethods
=
{
handleAdd
:
this
.
handleAdd
,
handleAdd
:
this
.
handleAdd
,
...
@@ -247,7 +276,7 @@ class ResourceList extends PureComponent {
...
@@ -247,7 +276,7 @@ class ResourceList extends PureComponent {
<
/div
>
<
/div
>
<
Table
defaultExpandAllRows
=
{
true
}
columns
=
{
columns
}
dataSource
=
{
list
}
rowKey
=
"id"
/>
<
Table
defaultExpandAllRows
=
{
true
}
columns
=
{
columns
}
dataSource
=
{
list
}
rowKey
=
"id"
/>
<
/Card
>
<
/Card
>
<
CreateForm
{...
parentMethods
}
modalVisible
=
{
modalVisible
}
/
>
<
CreateForm
{...
parentMethods
}
selectTree
=
{
selectTree
}
modalVisible
=
{
modalVisible
}
/
>
<
/PageHeaderWrapper
>
<
/PageHeaderWrapper
>
);
);
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论