ant-design+vue3使用layout的logo框不显示问题

文章描述了在使用Vue的A-Layout组件时,遇到CSS样式调整及折叠菜单的问题,作者对官方文档的代码表示困惑,寻求帮助。

主要是css样式改下,本来写的很舒服的,知识充满脑子的舒适感,但是,这个问题折磨得让人很烦躁。谁能想到官方文档的代码出问题@@

<template>
  <a-layout>
    <a-layout-sider v-model:collapsed="collapsed" :trigger="null" collapsible>
      <div class="logo" />
      <a-menu v-model:selectedKeys="selectedKeys" theme="dark" mode="inline">
        <a-menu-item key="1">
          <user-outlined />
          <span>nav 1</span>
        </a-menu-item>
        <a-menu-item key="2">
          <video-camera-outlined />
          <span>nav 2</span>
        </a-menu-item>
        <a-menu-item key="3">
          <upload-outlined />
          <span>nav 3</span>
        </a-menu-item>
      </a-menu>
    </a-layout-sider>
    <a-layout>
      <a-layout-header style="background: #fff; padding: 0">
        <menu-unfold-outlined
            v-if="collapsed"
            class="trigger"
            @click="() => (collapsed = !collapsed)"
        />
        <menu-fold-outlined v-else class="trigger" @click="() => (collapsed = !collapsed)" />
      </a-layout-header>
      <a-layout-content
          :style="{ margin: '24px 16px', padding: '24px', background: '#fff', minHeight: '280px' }"
      >
        Content
      </a-layout-content>
    </a-layout>
  </a-layout>
</template>
<script setup>
import { ref } from 'vue';
const selectedKeys = ref(['1']);
const collapsed = ref(false);
</script>
<style>
.trigger{
  font-size:18px;
  line-height:64px;
  padding:0 24px;
  cursor:pointer;
  transition:color 0.3s;
}
.trigger:hover {
  color:#5f45f1;
}
.logo{
  height:32px;
  background:rgba(255,255,255,0.3);
  margin:16px;
}
site-Layout .site-layout-background {
  background:#fff;
}
</style>

### Ant Design Vue Pro Layout 使用指南 #### 安装依赖 为了使用 `ProLayout` 组件,首先需要安装必要的依赖包。可以通过 npm 或 yarn 来完成这一步骤。 ```bash npm install @ant-design/pro-layout antd vue-router vuex --save ``` 或者 ```bash yarn add @ant-design/pro-layout antd vue-router vuex ``` #### 配置路由与状态管理 配置好路由和 Vuex 是使用 `ProLayout` 的前提条件之一[^1]。 ```javascript // main.js import { createApp } from &#39;vue&#39;; import App from &#39;./App.vue&#39;; import router from &#39;./router&#39;; // 自定义路由器文件路径 import store from &#39;./store&#39;; // 自定义Vuex存储文件路径 import &#39;@alifd/next/dist/next.css&#39;; const app = createApp(App); app.use(store).use(router).mount(&#39;#app&#39;); ``` #### 初始化 ProLayout 组件 在页面组件中引入并初始化 `ProLayout` 组件,设置基本属性来满足项目需求。 ```html <template> <pro-layout :menus="menus" /> </template> <script setup lang="ts"> import { ref, defineComponent } from "vue"; defineComponent({ name: "MyPage", }); let menus = [ { path: "/welcome", name: "欢迎", icon: "smile" }, ]; </script> ``` 上述代码展示了如何创建一个简单的菜单列表,并将其传递给 `ProLayout` 组件作为其子项显示于侧边栏内[^2]。 #### 布局调整实例 通过修改栅格系统的参数可以灵活控制页面布局效果。下面的例子说明了同列宽组合下的展示方式: ```html <template> <a-row> <!-- 左右两侧各占一半宽度 --> <a-col :span="12">左侧内容区</a-col> <a-col :span="12">右侧内容区</a-col> </a-row> <a-row> <!-- 中间部分占据更多空间 --> <a-col :span="6" :offset="3">左偏移三格的内容区</a-col> <a-col :span="12">中间主要内容区</a-col> <a-col :span="3">右边留白区域</a-col> </a-row> </template> ``` 此段代码片段来自实际应用案例,用于解释如何利用 Ant Design Vue 提供的基础布局工具实现多样化的界面设计[^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值