浅谈一下Nuxt3中的layouts

简介: 继上一篇文章([nuxt3目录及使用 - 掘金 (juejin.cn)](https://juejin.cn/post/7199265829954715685))之后,我们继续学习Nuxt的相关使用。# layouts这次我们先引入一个layouts目录,这个目录是做什么的呢?我们在下面的使用中说清楚。我们先在根目录下新建一个`layouts`目录,然后我们在`layouts`目录下新建一个`layout1.vue`文件,然后我们开始使用一下神奇的`layouts`。内容如下:```<template> <header> <h1>

继上一篇文章(nuxt3目录及使用 - 掘金 (juejin.cn))之后,我们继续学习Nuxt的相关使用。

layouts

这次我们先引入一个layouts目录,这个目录是做什么的呢?我们在下面的使用中说清楚。

我们先在根目录下新建一个layouts目录,然后我们在layouts目录下新建一个layout1.vue文件,然后我们开始使用一下神奇的layouts

内容如下:

<template>
    <header>
        <h1>
            标题
        </h1>
    </header>
    <main>
        <slot></slot>
    </main>
</template>

<script setup lang="ts"></script>

我们先解释一下,首先定义了一个公用的头--标题,然后主要内容可以由后续插入的内容来决定。

我们来实际使用一下:

我们改进一下index.vue中的内容:

<template>
    <NuxtLayout name="layout1">首页</NuxtLayout>
</template>
<script setup lang="ts"></script>

可见,我们通过了一个Nuxt3中提供的NuxtLayout标签,内部指定了name="layout1",再看看我们layouts目录下的文件名字,同样是layout1.vue,参考我们前面的铺垫,我们使用了Nuxt约定的方式,所以我们无需导入导出,直接就可以通过name属性来指定布局方式,我们运行一下看看效果。

image.png

确实如预期所想,我们插入的内容自动的放在了插槽中,而上方还是我们定义好的标题。

有什么用?

在业务逻辑开发中,我们面对大量的不同的页面,页面和页面间有相似布局的部分,也有不相似的布局的部分,所以我们如果使用Nuxt3中的布局,可以预先根据不同页面的布局需求写出大致的步聚骨架部分,然后根据业务页面的不同选择不同name的布局。完成使用。

相关文章
|
JavaScript 中间件 API
nuxt3:我们开始吧-开发-配置-部署(一)
nuxt3:我们开始吧-开发-配置-部署(一)
1381 0
|
前端开发 应用服务中间件 网络安全
【Nuxt】Nuxt做官网要求适配PC&Mobile,我的解决方案
前言 项目终于进入了尾声,这段时间主要在忙公司官网的开发,前段时间我在忙另外一个项目的时候,官网这个项目就启动了,团队里的另外一个小伙伴居然用Vue-cli构建了一个项目去做官网,导致我很难李姐,所以我提出重构项目,由我主导开发,写篇文章记录一下项目信息以及部分关键点。
2347 0
|
NoSQL Java Redis
redis集群拓扑结构自动更新:使用Lettuce连接Cluster集群实例时异常处理(一)
redis集群拓扑结构自动更新:使用Lettuce连接Cluster集群实例时异常处理
1764 0
|
3月前
|
安全 云栖大会
云栖大会“最有料”分会场来了!安全分论坛独家亮点大剧透
9月24日—26日,干货满满的安全板块等你来玩!
1121 7
|
安全 API
vite 中配置代理
【10月更文挑战第5天】
1789 61
|
数据格式
使用小技巧实现el-table组件的合并行功能,ElementUI和ElementPlus都适用
本文介绍了在ElementUI和ElementPlus中使用`el-table`组件实现合并行功能的技巧,包括多列合并和单列合并的方法,并提供了相应的示例代码和运行效果。
9998 1
使用小技巧实现el-table组件的合并行功能,ElementUI和ElementPlus都适用
|
JavaScript 前端开发
vue3.x的setup语法糖
vue3.x的setup语法糖
419 61
|
Ubuntu Java Linux
如何检查 Java 版本是否兼容
要检查Java版本是否兼容,可在命令行输入“java -version”查看当前安装的Java版本,然后对比目标应用所需的Java版本,确保其满足要求。
917 1
vue3 element-ui-plus Carousel 跑马灯 的使用 及 踩坑记录
本文介绍了在Vue 3中使用Element UI Plus的Carousel组件实现跑马灯效果的方法,并分享了在实现过程中遇到的常见问题和解决方案。
vue3 element-ui-plus Carousel 跑马灯 的使用 及 踩坑记录
|
前端开发 算法 JavaScript
React项目input输入框输入自动失去焦点
本文讨论了在React项目中如何处理input输入框自动失去焦点的问题,特别是在移动端开发中。文章提供了一个使用React Native的TouchableWithoutFeedback组件来监听点击事件,并在事件处理函数中通过调用Keyboard.dismiss()方法使输入框失去焦点的示例代码。这种方法可以确保在用户点击页面其他区域时,键盘能够收起,输入框失去焦点。
479 1
React项目input输入框输入自动失去焦点