增加了页面结构的切换功能

移动端的判断代码移动

调整el-table的滚动条样式
master
toesbieya 6 years ago
parent 6fbe51ee0a
commit a444d520d3
  1. 8
      vue/src/asset/style/element-ui.scss
  2. 18
      vue/src/layout/component/Header/index.vue
  3. 0
      vue/src/layout/component/Navbar/component/Bell.vue
  4. 0
      vue/src/layout/component/Navbar/component/Hamburger.vue
  5. 0
      vue/src/layout/component/Navbar/component/HeadMenu.vue
  6. 0
      vue/src/layout/component/Navbar/index.vue
  7. 0
      vue/src/layout/component/Page/component/TagsView/ScrollPanel.vue
  8. 4
      vue/src/layout/component/Page/component/TagsView/index.vue
  9. 0
      vue/src/layout/component/Page/component/TagsView/style.scss
  10. 9
      vue/src/layout/component/Page/index.vue
  11. 27
      vue/src/layout/index.vue
  12. 6
      vue/src/layout/store/app.js

@ -221,14 +221,6 @@
thead > tr > th { thead > tr > th {
background: #fbfbfb; background: #fbfbfb;
} }
.el-table--scrollable-x .el-table__body-wrapper {
overflow-x: overlay;
}
.el-table--scrollable-y .el-table__body-wrapper {
overflow-y: overlay;
}
} }
.el-textarea { .el-textarea {

@ -1,18 +0,0 @@
<script type="text/jsx">
import {getters as tagsViewGetters} from "@/layout/store/tagsView"
import VNavbar from './Navbar'
import TagsView from './TagsView'
export default {
functional: true,
render() {
return (
<header>
<VNavbar/>
{tagsViewGetters.enabled && <TagsView/>}
</header>
)
}
}
</script>

@ -189,12 +189,12 @@ export default {
render() { render() {
return ( return (
<nav class="tags-view-container"> <div class="tags-view-container">
<scroll-panel ref="scrollPanel" class="tags-view-wrapper"> <scroll-panel ref="scrollPanel" class="tags-view-wrapper">
{this.renderTags()} {this.renderTags()}
</scroll-panel> </scroll-panel>
{this.renderContextMenu()} {this.renderContextMenu()}
</nav> </div>
) )
} }
} }

@ -5,11 +5,12 @@ import BackToTop from "./component/BackToTop"
import PageHeader from "./component/PageHeader" import PageHeader from "./component/PageHeader"
import PageView from "./component/PageView" import PageView from "./component/PageView"
import PageFooter from "./component/PageFooter" import PageFooter from "./component/PageFooter"
import TagsView from './component/TagsView'
export default { export default {
name: 'Page', name: 'Page',
components: {BackToTop, PageHeader, PageView, PageFooter}, components: {BackToTop, PageHeader, PageView, PageFooter, TagsView},
computed: { computed: {
renderPageHeader() { renderPageHeader() {
@ -26,6 +27,8 @@ export default {
return ( return (
<main class="page-main"> <main class="page-main">
{enabled && <tags-view/>}
<div v-show={!showIframe} class={this.pageClass}> <div v-show={!showIframe} class={this.pageClass}>
{this.renderPageHeader && <page-header/>} {this.renderPageHeader && <page-header/>}
@ -61,8 +64,10 @@ export default {
@import "~@/asset/style/variables.scss"; @import "~@/asset/style/variables.scss";
.page-main { .page-main {
position: relative; display: flex;
flex-direction: column;
flex: 1; flex: 1;
position: relative;
overflow: hidden; overflow: hidden;
background-color: #f0f2f5; background-color: #f0f2f5;

@ -1,20 +1,18 @@
<script type="text/jsx"> <script type="text/jsx">
import offlineMixin from './mixin/offline' import offlineMixin from './mixin/offline'
import VAside from './component/Aside' import VAside from './component/Aside'
import VHeader from './component/Header' import VNavbar from './component/Navbar'
import VPage from './component/Page' import VPage from './component/Page'
import {getters as appGetters, mutations as appMutations} from "@/layout/store/app" import {getters as appGetters} from "@/layout/store/app"
import {getters as pageGetters} from "@/layout/store/page" import {getters as pageGetters} from "@/layout/store/page"
import {getters as tagsViewGetters} from "@/layout/store/tagsView" import {getters as tagsViewGetters} from "@/layout/store/tagsView"
import {debounce} from "@/util"
import {isMobile} from "@/util/browser"
export default { export default {
name: 'Layout', name: 'Layout',
mixins: [offlineMixin], mixins: [offlineMixin],
components: {VAside, VHeader, VPage}, components: {VAside, VNavbar, VPage},
computed: { computed: {
isLeftRight() { isLeftRight() {
@ -40,26 +38,15 @@ export default {
} }
}, },
mounted() {
this.$_resizeHandler = debounce(() => {
!document.hidden && appMutations.isMobile(isMobile())
})
this.$_resizeHandler()
window.addEventListener('resize', this.$_resizeHandler)
this.$once('hook:beforeDestroy', () => {
window.removeEventListener('resize', this.$_resizeHandler)
})
},
render() { render() {
const aside = this.renderAside && <v-aside/>
return ( return (
<section class={this.wrapperClass}> <section class={this.wrapperClass}>
{this.isLeftRight ? this.renderAside && <v-aside/> : <v-header/>} {this.isLeftRight ? aside : <v-navbar/>}
<section class={this.containerClass}> <section class={this.containerClass}>
{this.isLeftRight ? <v-header/> : <v-aside/>} {this.isLeftRight ? <v-navbar/> : aside}
<v-page/> <v-page/>
</section> </section>
</section> </section>

@ -1,5 +1,5 @@
import Vue from 'vue' import Vue from 'vue'
import {isEmpty} from "@/util" import {debounce, isEmpty} from "@/util"
import {isMobile} from "@/util/browser" import {isMobile} from "@/util/browser"
import {createGetters, createMutations} from "@/util/observable" import {createGetters, createMutations} from "@/util/observable"
@ -67,3 +67,7 @@ function sort(routes) {
} }
}) })
} }
window.addEventListener('resize', debounce(() => {
!document.hidden && mutations.isMobile(isMobile())
}))

Loading…
Cancel
Save