docs: add docs for layout (#18)
Co-authored-by: GU Yiling <justice360@gmail.com>
This commit is contained in:
56
one/docs/demo/layout/basic.vue
Normal file
56
one/docs/demo/layout/basic.vue
Normal file
@@ -0,0 +1,56 @@
|
||||
<template>
|
||||
<article>
|
||||
<div class="mock-window">
|
||||
<veui-layout>
|
||||
<veui-header>Header</veui-header>
|
||||
<veui-layout>
|
||||
<veui-sidebar>
|
||||
<div class="center full">Sidebar</div>
|
||||
</veui-sidebar>
|
||||
<veui-layout>
|
||||
<veui-content>Content</veui-content>
|
||||
<veui-footer style="background: #ccc;">Footer(背景仅为演示)</veui-footer>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Layout, Header, Footer, Sidebar, Content } from 'veui'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'veui-layout': Layout,
|
||||
'veui-header': Header,
|
||||
'veui-footer': Footer,
|
||||
'veui-sidebar': Sidebar,
|
||||
'veui-content': Content
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mock-window {
|
||||
height: 384px;
|
||||
transform: translate(0, 0); // bfc for fixed
|
||||
|
||||
& > .veui-layout {
|
||||
min-width: 860px;
|
||||
}
|
||||
}
|
||||
|
||||
.center,
|
||||
.veui-layout-header,
|
||||
.veui-layout-footer,
|
||||
.veui-layout-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.full {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
60
one/docs/demo/layout/global-footer.vue
Normal file
60
one/docs/demo/layout/global-footer.vue
Normal file
@@ -0,0 +1,60 @@
|
||||
<template>
|
||||
<article>
|
||||
<div class="mock-window">
|
||||
<veui-layout>
|
||||
<veui-header>Header</veui-header>
|
||||
<veui-layout>
|
||||
<veui-sidebar>
|
||||
<div class="center full">Sidebar</div>
|
||||
</veui-sidebar>
|
||||
<veui-layout>
|
||||
<veui-content>Content</veui-content>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
<veui-footer style="background: #ccc;">Footer(背景仅为演示)</veui-footer>
|
||||
</veui-layout>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Layout, Header, Footer, Sidebar, Content } from 'veui'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'veui-layout': Layout,
|
||||
'veui-header': Header,
|
||||
'veui-footer': Footer,
|
||||
'veui-sidebar': Sidebar,
|
||||
'veui-content': Content
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mock-window {
|
||||
height: 384px;
|
||||
transform: translate(0, 0); // bfc for fixed
|
||||
|
||||
& > .veui-layout {
|
||||
min-width: 860px;
|
||||
}
|
||||
}
|
||||
|
||||
.center,
|
||||
.veui-layout-header,
|
||||
.veui-layout-footer,
|
||||
.veui-layout-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.full {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
60
one/docs/demo/layout/global-sidebar.vue
Normal file
60
one/docs/demo/layout/global-sidebar.vue
Normal file
@@ -0,0 +1,60 @@
|
||||
<template>
|
||||
<article>
|
||||
<div class="mock-window">
|
||||
<veui-layout>
|
||||
<veui-sidebar>
|
||||
<div class="center full">Sidebar</div>
|
||||
</veui-sidebar>
|
||||
<veui-layout>
|
||||
<veui-header>Header</veui-header>
|
||||
<veui-layout>
|
||||
<veui-content>Content</veui-content>
|
||||
<veui-footer style="background: #ccc;">Footer(背景仅为演示)</veui-footer>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Layout, Header, Footer, Sidebar, Content } from 'veui'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'veui-layout': Layout,
|
||||
'veui-header': Header,
|
||||
'veui-footer': Footer,
|
||||
'veui-sidebar': Sidebar,
|
||||
'veui-content': Content
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mock-window {
|
||||
height: 384px;
|
||||
transform: translate(0, 0); // bfc for fixed
|
||||
|
||||
& > .veui-layout {
|
||||
min-width: 860px;
|
||||
}
|
||||
}
|
||||
|
||||
.center,
|
||||
.veui-layout-header,
|
||||
.veui-layout-footer,
|
||||
.veui-layout-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.full {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
69
one/docs/demo/layout/sticky.vue
Normal file
69
one/docs/demo/layout/sticky.vue
Normal file
@@ -0,0 +1,69 @@
|
||||
<template>
|
||||
<article>
|
||||
<div class="mock-window">
|
||||
<veui-layout style="--dls-layout-header-height: 64px;">
|
||||
<veui-header sticky>Header</veui-header>
|
||||
<veui-layout>
|
||||
<veui-sidebar sticky style="max-height: 320px;">
|
||||
<div class="center full">Sidebar</div>
|
||||
</veui-sidebar>
|
||||
<veui-layout>
|
||||
<veui-content>
|
||||
<div class="center" style="height: 800px;">Sidebar</div>
|
||||
</veui-content>
|
||||
<veui-footer sticky style="background: #ccc;">Footer(背景仅为演示)</veui-footer>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Layout, Header, Footer, Sidebar, Content } from 'veui'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'veui-layout': Layout,
|
||||
'veui-header': Header,
|
||||
'veui-footer': Footer,
|
||||
'veui-sidebar': Sidebar,
|
||||
'veui-content': Content
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
mode: 'slim',
|
||||
modes: [
|
||||
{ label: 'slim', value: 'slim' },
|
||||
{ label: 'hidden', value: 'hidden' }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mock-window {
|
||||
height: 384px;
|
||||
transform: translate(0, 0); // bfc for fixed
|
||||
overflow: auto;
|
||||
border: 1px solid #eee;
|
||||
|
||||
& > .veui-layout {
|
||||
min-width: 860px;
|
||||
}
|
||||
}
|
||||
|
||||
.center,
|
||||
.veui-layout-header,
|
||||
.veui-layout-footer,
|
||||
.veui-layout-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.full {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
76
one/docs/demo/sidebar/collapse-mode.vue
Normal file
76
one/docs/demo/sidebar/collapse-mode.vue
Normal file
@@ -0,0 +1,76 @@
|
||||
<template>
|
||||
<article>
|
||||
<veui-radio-button-group
|
||||
v-model="mode"
|
||||
:items="modes"
|
||||
/>
|
||||
<div class="mock-window">
|
||||
<veui-layout>
|
||||
<veui-header>Header</veui-header>
|
||||
<veui-layout>
|
||||
<veui-sidebar :collapse-mode="mode">
|
||||
<div class="center full">Sidebar</div>
|
||||
</veui-sidebar>
|
||||
<veui-layout>
|
||||
<veui-content>Content</veui-content>
|
||||
<veui-footer style="background: #ccc;">Footer(背景仅为演示)</veui-footer>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Layout, Header, Footer, Sidebar, Content, RadioButtonGroup } from 'veui'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'veui-layout': Layout,
|
||||
'veui-header': Header,
|
||||
'veui-footer': Footer,
|
||||
'veui-sidebar': Sidebar,
|
||||
'veui-content': Content,
|
||||
'veui-radio-button-group': RadioButtonGroup
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
mode: 'slim',
|
||||
modes: [
|
||||
{ label: 'slim', value: 'slim' },
|
||||
{ label: 'hidden', value: 'hidden' }
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mock-window {
|
||||
height: 384px;
|
||||
transform: translate(0, 0); // bfc for fixed
|
||||
overflow: auto;
|
||||
border: 1px solid #eee;
|
||||
|
||||
& > .veui-layout {
|
||||
min-width: 860px;
|
||||
}
|
||||
}
|
||||
|
||||
.center,
|
||||
.veui-layout-header,
|
||||
.veui-layout-footer,
|
||||
.veui-layout-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.veui-radio-button-group {
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
|
||||
.full {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
56
one/docs/demo/sidebar/collapsible.vue
Normal file
56
one/docs/demo/sidebar/collapsible.vue
Normal file
@@ -0,0 +1,56 @@
|
||||
<template>
|
||||
<article>
|
||||
<div class="mock-window">
|
||||
<veui-layout>
|
||||
<veui-header>Header</veui-header>
|
||||
<veui-layout>
|
||||
<veui-sidebar :collapsible="false">
|
||||
<div class="center full">Sidebar</div>
|
||||
</veui-sidebar>
|
||||
<veui-layout>
|
||||
<veui-content>Content</veui-content>
|
||||
<veui-footer style="background: #ccc;">Footer(背景仅为演示</veui-footer>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</veui-layout>
|
||||
</div>
|
||||
</article>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Layout, Header, Footer, Sidebar, Content } from 'veui'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
'veui-layout': Layout,
|
||||
'veui-header': Header,
|
||||
'veui-footer': Footer,
|
||||
'veui-sidebar': Sidebar,
|
||||
'veui-content': Content
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.mock-window {
|
||||
height: 384px;
|
||||
transform: translate(0, 0); // bfc for fixed
|
||||
|
||||
& > .veui-layout {
|
||||
min-width: 860px;
|
||||
}
|
||||
}
|
||||
|
||||
.center,
|
||||
.veui-layout-header,
|
||||
.veui-layout-footer,
|
||||
.veui-layout-content {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.full {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user