Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
4b488d72
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
4b488d72
编写于
5月 08, 2017
作者:
A
Alfredo Sumaran
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Prepare groups components for subgroups
上级
5e0e3971
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
68 addition
and
15 deletion
+68
-15
app/assets/javascripts/groups/components/group_item.vue
app/assets/javascripts/groups/components/group_item.vue
+30
-9
app/assets/javascripts/groups/components/groups.vue
app/assets/javascripts/groups/components/groups.vue
+15
-3
app/assets/javascripts/groups/event_hub.js
app/assets/javascripts/groups/event_hub.js
+3
-0
app/assets/javascripts/groups/index.js
app/assets/javascripts/groups/index.js
+2
-2
app/assets/javascripts/groups/stores/groups_store.js
app/assets/javascripts/groups/stores/groups_store.js
+18
-1
未找到文件。
app/assets/javascripts/groups/components/group_item.vue
浏览文件 @
4b488d72
<
script
>
import
eventHub
from
'
../event_hub
'
;
export
default
{
props
:
{
group
:
{
type
:
Object
,
required
:
true
,
}
}
},
},
methods
:
{
toggleSubGroups
()
{
eventHub
.
$emit
(
'
toggleSubGroups
'
,
this
.
group
);
},
},
};
</
script
>
<
template
>
<tr>
<td>
<div>
<a
:href=
"group.web_url"
>
{{
group
.
full_name
}}
</a>
</div>
<div>
{{
group
.
description
}}
</div>
</td>
<tr
@
click=
"toggleSubGroups"
>
<template
>
<td>
<span>
<i
v-show=
"group.isOpen"
class=
"fa fa-caret-down"
aria-hidden=
"true"
/>
<i
v-show=
"!group.isOpen"
class=
"fa fa-caret-right"
aria-hidden=
"true"
/>
</span>
</td>
<td>
<div>
<a
:href=
"group.web_url"
>
{{
group
.
full_name
}}
</a>
</div>
<div>
{{
group
.
description
}}
</div>
</td>
</
template
>
</tr>
</template>
app/assets/javascripts/groups/components/groups.vue
浏览文件 @
4b488d72
...
...
@@ -2,6 +2,7 @@
import
GroupsStore
from
'
../stores/groups_store
'
;
import
GroupsService
from
'
../services/groups_service
'
;
import
GroupItem
from
'
../components/group_item.vue
'
;
import
eventHub
from
'
../event_hub
'
;
export
default
{
components
:
{
...
...
@@ -14,7 +15,7 @@ export default {
return
{
store
,
state
:
store
.
state
,
}
}
;
},
created
()
{
...
...
@@ -22,6 +23,8 @@ export default {
this
.
service
=
new
GroupsService
(
appEl
.
dataset
.
endpoint
);
this
.
fetchGroups
();
eventHub
.
$on
(
'
toggleSubGroups
'
,
this
.
toggleSubGroups
);
},
methods
:
{
...
...
@@ -34,12 +37,21 @@ export default {
// TODO: Handler error
});
},
}
toggleSubGroups
(
group
)
{
GroupsStore
.
toggleSubGroups
(
group
);
},
},
};
</
script
>
<
template
>
<table
class=
"table table-bordered"
>
<group-item
:group=
"group"
v-for=
"group in state.groups"
/>
<template
v-for=
"group in state.groups"
>
<tr
is=
"group-item"
:group=
"group"
/>
<tr
v-if=
"group.isOpen"
>
<td>
sub groups for
{{
group
.
name
}}
</td>
<td></td>
</tr>
</
template
>
</table>
</template>
app/assets/javascripts/groups/event_hub.js
0 → 100644
浏览文件 @
4b488d72
import
Vue
from
'
vue
'
;
export
default
new
Vue
();
app/assets/javascripts/groups/index.js
浏览文件 @
4b488d72
/* eslint-disable no-unused-vars */
import
Vue
from
'
vue
'
;
import
GroupsComponent
from
'
./components/groups.vue
'
import
GroupsComponent
from
'
./components/groups.vue
'
;
$
(()
=>
{
const
appEl
=
document
.
querySelector
(
'
#dashboard-group-app
'
);
...
...
@@ -9,7 +9,7 @@ $(() => {
const
GroupsApp
=
new
Vue
({
el
:
appEl
,
components
:
{
'
groups-component
'
:
GroupsComponent
'
groups-component
'
:
GroupsComponent
,
},
render
:
createElement
=>
createElement
(
'
groups-component
'
),
});
...
...
app/assets/javascripts/groups/stores/groups_store.js
浏览文件 @
4b488d72
...
...
@@ -7,8 +7,25 @@ export default class GroupsStore {
}
setGroups
(
groups
)
{
this
.
state
.
groups
=
groups
;
this
.
state
.
groups
=
this
.
decorateGroups
(
groups
)
;
return
groups
;
}
decorateGroups
(
rawGroups
)
{
this
.
groups
=
rawGroups
.
map
(
GroupsStore
.
decorateGroup
);
return
this
.
groups
;
}
static
decorateGroup
(
rawGroup
)
{
const
group
=
rawGroup
;
group
.
isOpen
=
false
;
return
group
;
}
static
toggleSubGroups
(
toggleGroup
)
{
const
group
=
toggleGroup
;
group
.
isOpen
=
!
group
.
isOpen
;
return
group
;
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录