diff --git a/src/layouts/LMainFooter.ts b/src/layouts/LMainFooter.ts index d088db2..5459e49 100644 --- a/src/layouts/LMainFooter.ts +++ b/src/layouts/LMainFooter.ts @@ -7,14 +7,7 @@ export default Vue.extend({ functional: true, - props: { - sticky: { - type: Boolean, - default: true - } - }, - - render(h: CreateElement, { props }): VNode | VNode[] { + render(h: CreateElement, { parent }): VNode | VNode[] { const vNodes = [h('router-view')] function createAnchorElement( @@ -38,7 +31,9 @@ export default Vue.extend({ ) } - if (props.sticky) { + const layoutPayload: Record<'sticky', boolean> = (parent.$route.meta || {}) + .layoutPayload + if (layoutPayload && layoutPayload.sticky) { vNodes.push( h( 'footer', diff --git a/src/router/index.ts b/src/router/index.ts index ea14ed0..e737148 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -8,8 +8,7 @@ export const routes = [ { path: '/', name: 'Home', - component: () => import(/* webpackChunkName: "home" */ '../views/Home.vue'), - meta: {} + component: () => import(/* webpackChunkName: "home" */ '../views/Home.vue') }, { path: '/login', @@ -17,7 +16,10 @@ export const routes = [ component: () => import(/* webpackChunkName: 'login' */ '../views/Login/index.vue'), meta: { - layout: 'LMainFooter' + layout: 'LMainFooter', + layoutPayload: { + sticky: true + } } }, {