layui/.svn/pristine/1c/1c43960e66d72704dc08e3a82d33ac660fa4ba30.svn-base
2022-12-09 16:41:41 +08:00

40 lines
908 B
Plaintext

<template>
<div class="lay-page-header">
<div class="lay-page-header__left" @click="emits('back')">
<slot name="backIcon"
><i class="layui-icon" :class="[backIcon]"></i
></slot>
<div class="lay-page-header__title">{{ backText }}</div>
</div>
<div class="lay-page-header__content">
<slot v-if="slots.default"></slot>
<template v-else> {{ content }}</template>
</div>
</div>
</template>
<script lang="ts">
export default {
name: "LayPageHeader",
};
</script>
<script lang="ts" setup>
import { useSlots } from "vue";
import "./index.less";
export interface PageHeaderProps {
content?: string;
backText?: string;
backIcon?: string;
}
const props = withDefaults(defineProps<PageHeaderProps>(), {
content: "",
backText: "返回",
backIcon: "layui-icon-return",
});
const emits = defineEmits(["back"]);
const slots = useSlots();
</script>