mirror of https://github.com/halo-dev/halo
ui build
parent
5d18fa2870
commit
100298cde9
|
@ -1,150 +0,0 @@
|
||||||
<template>
|
|
||||||
<div id="userLayout" :class="['user-layout-wrapper', device]">
|
|
||||||
<div class="container">
|
|
||||||
<div class="top">
|
|
||||||
<div class="header">
|
|
||||||
<a href="/">
|
|
||||||
<img src="~@/assets/logo.svg" class="logo" alt="logo">
|
|
||||||
<span class="title">Ant Design</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div class="desc">
|
|
||||||
Ant Design 是西湖区最具影响力的 Web 设计规范
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<route-view></route-view>
|
|
||||||
|
|
||||||
<div class="footer">
|
|
||||||
<div class="links">
|
|
||||||
<a href="_self">帮助</a>
|
|
||||||
<a href="_self">隐私</a>
|
|
||||||
<a href="_self">条款</a>
|
|
||||||
</div>
|
|
||||||
<div class="copyright">
|
|
||||||
Copyright © 2018 白鹭学园技术组出品
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import RouteView from '@/components/layouts/RouteView'
|
|
||||||
import { mixinDevice } from '@/utils/mixin.js'
|
|
||||||
|
|
||||||
export default {
|
|
||||||
name: 'UserLayout',
|
|
||||||
components: { RouteView },
|
|
||||||
mixins: [mixinDevice],
|
|
||||||
data() {
|
|
||||||
return {}
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
document.body.classList.add('userLayout')
|
|
||||||
},
|
|
||||||
beforeDestroy() {
|
|
||||||
document.body.classList.remove('userLayout')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style lang="less" scoped>
|
|
||||||
#userLayout.user-layout-wrapper {
|
|
||||||
height: 100%;
|
|
||||||
|
|
||||||
&.mobile {
|
|
||||||
.container {
|
|
||||||
.main {
|
|
||||||
max-width: 368px;
|
|
||||||
width: 98%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.container {
|
|
||||||
width: 100%;
|
|
||||||
min-height: 100%;
|
|
||||||
background: #f0f2f5 url(~@/assets/background.svg) no-repeat 50%;
|
|
||||||
background-size: 100%;
|
|
||||||
padding: 110px 0 144px;
|
|
||||||
position: relative;
|
|
||||||
|
|
||||||
a {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.top {
|
|
||||||
text-align: center;
|
|
||||||
|
|
||||||
.header {
|
|
||||||
height: 44px;
|
|
||||||
line-height: 44px;
|
|
||||||
|
|
||||||
.badge {
|
|
||||||
position: absolute;
|
|
||||||
display: inline-block;
|
|
||||||
line-height: 1;
|
|
||||||
vertical-align: middle;
|
|
||||||
margin-left: -12px;
|
|
||||||
margin-top: -10px;
|
|
||||||
opacity: 0.8;
|
|
||||||
}
|
|
||||||
|
|
||||||
.logo {
|
|
||||||
height: 44px;
|
|
||||||
vertical-align: top;
|
|
||||||
margin-right: 16px;
|
|
||||||
border-style: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.title {
|
|
||||||
font-size: 33px;
|
|
||||||
color: rgba(0, 0, 0, .85);
|
|
||||||
font-family: Avenir, 'Helvetica Neue', Arial, Helvetica, sans-serif;
|
|
||||||
font-weight: 600;
|
|
||||||
position: relative;
|
|
||||||
top: 2px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.desc {
|
|
||||||
font-size: 14px;
|
|
||||||
color: rgba(0, 0, 0, 0.45);
|
|
||||||
margin-top: 12px;
|
|
||||||
margin-bottom: 40px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.main {
|
|
||||||
min-width: 260px;
|
|
||||||
width: 368px;
|
|
||||||
margin: 0 auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
.footer {
|
|
||||||
position: absolute;
|
|
||||||
width: 100%;
|
|
||||||
bottom: 0;
|
|
||||||
padding: 0 16px;
|
|
||||||
margin: 48px 0 24px;
|
|
||||||
text-align: center;
|
|
||||||
|
|
||||||
.links {
|
|
||||||
margin-bottom: 8px;
|
|
||||||
font-size: 14px;
|
|
||||||
a {
|
|
||||||
color: rgba(0, 0, 0, 0.45);
|
|
||||||
transition: all 0.3s;
|
|
||||||
&:not(:last-child) {
|
|
||||||
margin-right: 40px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.copyright {
|
|
||||||
color: rgba(0, 0, 0, 0.45);
|
|
||||||
font-size: 14px;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
|
@ -1,7 +1,6 @@
|
||||||
import UserLayout from '@/components/layouts/UserLayout'
|
|
||||||
import BlankLayout from '@/components/layouts/BlankLayout'
|
import BlankLayout from '@/components/layouts/BlankLayout'
|
||||||
import BasicLayout from '@/components/layouts/BasicLayout'
|
import BasicLayout from '@/components/layouts/BasicLayout'
|
||||||
import RouteView from '@/components/layouts/RouteView'
|
import RouteView from '@/components/layouts/RouteView'
|
||||||
import PageView from '@/components/layouts/PageView'
|
import PageView from '@/components/layouts/PageView'
|
||||||
|
|
||||||
export { UserLayout, BasicLayout, BlankLayout, RouteView, PageView }
|
export { BasicLayout, BlankLayout, RouteView, PageView }
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// eslint-disable-next-line
|
// eslint-disable-next-line
|
||||||
import { UserLayout, BasicLayout, RouteView, BlankLayout, PageView } from '@/components/layouts'
|
import { BasicLayout, RouteView, BlankLayout, PageView } from '@/components/layouts'
|
||||||
|
|
||||||
export const asyncRouterMap = [
|
export const asyncRouterMap = [
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ export const asyncRouterMap = [
|
||||||
path: '/posts',
|
path: '/posts',
|
||||||
name: 'Posts',
|
name: 'Posts',
|
||||||
redirect: '/posts/list',
|
redirect: '/posts/list',
|
||||||
component: RouteView,
|
component: PageView,
|
||||||
meta: { title: '文章', icon: 'form' },
|
meta: { title: '文章', icon: 'form' },
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
|
@ -58,7 +58,7 @@ export const asyncRouterMap = [
|
||||||
{
|
{
|
||||||
path: '/pages',
|
path: '/pages',
|
||||||
name: 'Pages',
|
name: 'Pages',
|
||||||
component: RouteView,
|
component: PageView,
|
||||||
redirect: '/pages/list',
|
redirect: '/pages/list',
|
||||||
meta: { title: '页面', icon: 'read' },
|
meta: { title: '页面', icon: 'read' },
|
||||||
children: [
|
children: [
|
||||||
|
@ -97,7 +97,7 @@ export const asyncRouterMap = [
|
||||||
{
|
{
|
||||||
path: '/interface',
|
path: '/interface',
|
||||||
name: 'Interface',
|
name: 'Interface',
|
||||||
component: RouteView,
|
component: PageView,
|
||||||
redirect: '/interface/themes',
|
redirect: '/interface/themes',
|
||||||
meta: { title: '外观', icon: 'skin' },
|
meta: { title: '外观', icon: 'skin' },
|
||||||
children: [
|
children: [
|
||||||
|
@ -126,7 +126,7 @@ export const asyncRouterMap = [
|
||||||
{
|
{
|
||||||
path: '/user',
|
path: '/user',
|
||||||
name: 'User',
|
name: 'User',
|
||||||
component: RouteView,
|
component: PageView,
|
||||||
redirect: '/user/profile',
|
redirect: '/user/profile',
|
||||||
meta: { title: '用户', icon: 'user' },
|
meta: { title: '用户', icon: 'user' },
|
||||||
children: [
|
children: [
|
||||||
|
@ -143,7 +143,7 @@ export const asyncRouterMap = [
|
||||||
{
|
{
|
||||||
path: '/system',
|
path: '/system',
|
||||||
name: 'System',
|
name: 'System',
|
||||||
component: RouteView,
|
component: PageView,
|
||||||
redirect: '/system/options',
|
redirect: '/system/options',
|
||||||
meta: { title: '系统', icon: 'setting' },
|
meta: { title: '系统', icon: 'setting' },
|
||||||
children: [
|
children: [
|
||||||
|
|
|
@ -1,27 +1,13 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="page-header-index-wide">
|
<div class="page-header-index-wide">
|
||||||
<a-row :gutter="12">
|
<a-row :gutter="12">
|
||||||
<a-col
|
<a-col :xl="18" :lg="18" :md="18" :sm="24" :xs="24">
|
||||||
:xl="18"
|
|
||||||
:lg="18"
|
|
||||||
:md="18"
|
|
||||||
:sm="24"
|
|
||||||
:xs="24"
|
|
||||||
>
|
|
||||||
<a-card>
|
<a-card>
|
||||||
<codemirror :value="value"></codemirror>
|
<codemirror :value="value"></codemirror>
|
||||||
</a-card>
|
</a-card>
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col
|
<a-col :xl="6" :lg="6" :md="6" :sm="24" :xs="24">
|
||||||
:xl="6"
|
<a-card title="Anatole 主题">
|
||||||
:lg="6"
|
|
||||||
:md="6"
|
|
||||||
:sm="24"
|
|
||||||
:xs="24"
|
|
||||||
>
|
|
||||||
<a-card
|
|
||||||
title="Anatole 主题"
|
|
||||||
>
|
|
||||||
<theme-file :files="files" />
|
<theme-file :files="files" />
|
||||||
</a-card>
|
</a-card>
|
||||||
</a-col>
|
</a-col>
|
||||||
|
@ -63,9 +49,14 @@ export default {
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style lang="less">
|
||||||
.CodeMirror-gutters {
|
.CodeMirror-gutters {
|
||||||
border-right: 1px solid #fff3f3;
|
border-right: 1px solid #fff3f3;
|
||||||
background-color: #ffffff;
|
background-color: #ffffff;
|
||||||
}
|
}
|
||||||
|
.ant-card {
|
||||||
|
.ant-card-body {
|
||||||
|
padding: 16px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -48,5 +48,10 @@ export default {
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="less" scoped>
|
||||||
|
.ant-tree-child-tree {
|
||||||
|
li {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
Loading…
Reference in New Issue