-
Notifications
You must be signed in to change notification settings - Fork 92
/
Copy pathktransition.vue
130 lines (115 loc) · 2.82 KB
/
ktransition.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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<template>
<DocsPageTemplate apiDocs>
<DocsPageSection
title="Overview"
anchor="#overview"
>
<p>
Exposes predefined set of transitions built on top of Vue's <code><transition></code>.
</p>
</DocsPageSection>
<DocsPageSection
title="Usage"
anchor="#usage"
>
<ul>
<li>
Don't forget to define <code>key</code> on child elements of <code>KTransition</code> as
described
<DocsExternalLink
text="in Vue documentation"
href="https://v2.vuejs.org/v2/guide/transitions#Transitioning-Between-Elements"
/>.
</li>
</ul>
</DocsPageSection>
<DocsPageSection
title="Available transitions"
anchor="#overview"
>
<section>
<h3><code>component-fade-out-in</code></h3>
<p>Suitable when switching between two elements/components.</p>
<DocsShowCode language="html">
<KTransition kind="component-fade-out-in">
<div
v-if="isTruthy"
key="key-1"
>
First component
</div>
<div
v-else
key="key-2"
>
Second component
</div>
</KTransition>
</DocsShowCode>
<p>Output:</p>
<DocsShow
block
language="html"
>
<KTransition kind="component-fade-out-in">
<div
v-if="isTruthy"
key="key-1"
>
First component
</div>
<div
v-else
key="key-2"
>
Second component
</div>
</KTransition>
</DocsShow>
</section>
<section>
<h3><code>component-vertical-slide-out-in</code></h3>
<p>
Suitable when need to reduce vertical jarring effect during the entrance/exit of a
component.
</p>
<DocsExample
exampleId="vertical-slide"
loadExample="KTransition/VerticalSlide.vue"
/>
</section>
</DocsPageSection>
<DocsPageSection
title="Related"
anchor="#related"
>
<ul>
<li>
<DocsExternalLink
text="Vue's transitions documentation"
href="https://v2.vuejs.org/v2/guide/transitions"
/>
</li>
</ul>
</DocsPageSection>
</DocsPageTemplate>
</template>
<script>
export default {
data() {
return {
isTruthy: true,
intervalId: null,
};
},
mounted() {
this.intervalId = setInterval(() => {
this.isTruthy = !this.isTruthy;
}, 2000);
},
beforeDestroy() {
clearInterval(this.intervalId);
},
};
</script>
<style lang="scss" scoped></style>