修复 src 结构

This commit is contained in:
就眠儀式
2022-01-22 21:30:17 +08:00
parent 96bb84020b
commit d0debbb1b2
186 changed files with 251 additions and 251 deletions

View File

@@ -0,0 +1,10 @@
.layui-layout {
flex: 1;
display: flex;
flex-basis: auto;
box-sizing: border-box;
}
.layui-layout-vertical {
flex-direction: column;
}

View File

@@ -0,0 +1,9 @@
import type { App } from "vue";
import Component from "./index.vue";
import type { IDefineComponent } from "../type/index";
Component.install = (app: App) => {
app.component(Component.name || "LayLayout", Component);
};
export default Component as IDefineComponent;

View File

@@ -0,0 +1,41 @@
<script lang="ts">
export default {
name: "LayLayout",
};
</script>
<script setup lang="ts">
import { Component, computed, useSlots } from "vue";
import Header from "../header/index.vue";
import "./index.less";
export interface LayLayoutProps {
isVertical?: boolean;
}
const slots = useSlots();
const props = withDefaults(defineProps<LayLayoutProps>(), {
isVertical: false,
});
const isVertical = computed(() => {
if (!slots.default) return false;
const vNodes = slots.default();
return vNodes.some((vNode) => {
const componentName = (vNode.type as Component).name;
if (!componentName) return false;
return [Header.name].includes(componentName);
});
});
const classes = computed(() => {
return ["layui-layout", { "layui-layout-vertical": isVertical.value }];
});
</script>
<template>
<section :class="classes">
<slot></slot>
</section>
</template>