-
Notifications
You must be signed in to change notification settings - Fork 4
/
sidebar-item.vue
executable file
·69 lines (60 loc) · 1.95 KB
/
sidebar-item.vue
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
<style>
.collapsible-body {
padding: 0 0 0 1rem !important;
}
.is-link{
text-decoration: underline;
-webkit-text-decoration-style: dashed;
text-decoration-style: dashed;
-ms-text-underline-position: under;
text-underline-position: under;
}
.side-nav .collapsible-header, .side-nav.fixed .collapsible-header {
padding: 0 32px !important;
}
</style>
<template>
<!-- Check if the current articles has any sub cat. -->
<li v-if="!isDeep(articles)">
<a class="collapsible-header waves-effect waves-red">{{ category }}</a>
<div class="collapsible-body">
<ul class="collapsible" data-collapsible="accordion">
<li>
<div>
<ul class="collapsible" data-collapsible="accordion">
<sidebar-item v-for="(a, c) in articles" :articles="a" :category="c" :key="a.slug"></sidebar-item>
</ul>
</div>
</li>
</ul>
</div>
</li>
<!-- If no sub category. -->
<li v-else>
<a class="collapsible-header waves-effect waves-red">{{ category }}</a>
<div class="collapsible-body">
<ul>
<li v-for="article in articles" :key="article.slug">
<router-link :to="article.slug"
class="waves-effect waves-light is-link"
style="font-weight: 400;"
exact>
{{ article.title }}
</router-link>
</li>
</ul>
</div>
</li>
</template>
<script>
import isArray from 'lodash/isArray'
export default{
props: ['articles', 'category'],
methods: {
isDeep(array) {
return isArray(array)
}
},
name: "sidebar-item"
}
</script>