(三)SvelteKit教程:layout 文件

(三)SvelteKit教程:layout 文件

(1) 设置 layout 文件

我们如果需要添加一些统一的布局文件,我们可以在 routes 文件夹里面添加 layout.svelte 文件,比如我们需要添加 header 和 footer 文件,可以增加 routes/layout.svelte 文件,内容如下:

<header class="layout-header">Header</header>
<slot></slot>
<footer class="layout-footer">Footer</footer>


<style>
	.layout-header {
		background-color: #264653;
		color: #f4a261;
		font-size: 30px;
		text-align: center;
		padding: 10px;
	}
    .layout-footer {
		background-color: #264653;
		color: #e9c46a;
		font-size: 30px;
		text-align: center;
		padding: 10px;
	}
</style>

如果你想在特定的子文件里面进行添加,比如 /about 路由,那么我们可以添加在 /about/layout.svelte ,那么这个 layout 文件只作用在 /about 路由下面

(2)忽略一些 Layouts 文件

文件结构:

routes
├── +layout.svelte
├── +page.svelte
├── about
│   ├── +layout.svelte
│   ├── +page.svelte
│   ├── first
│   │   └── +page@about.svelte
│   └── second
│       ├── +layout.svelte
│       ├── +page.svelte
│       ├── a
│       │   └── +page@about.svelte
│       └── b
│           └── +page@.svelte

假设如果你不想在second/a 中用 second/layout.svelte 的布局文件,那么我们就可以在 a/page.svelte 中添加 @about 符号,定位到 about/layout.svelte 布局文件。如果你想直接定位到根目录下,那么你就可以直接用 @ 文件,而不需要添加任何别的后缀。

(3) 统一组件

如果你想把一些公用的组件进行抽离,我们可以将他们都放到 src/lib 文件夹下面,比如我们将 header 和 footer 都放到lib文件夹下面。

├── lib
│   ├── footer.svelte
│   └── header.svelte
└── routes
    ├── +layout.svelte
    ├── +page.svelte
    ├── about
    │   ├── +layout.svelte
    │   ├── +page.svelte
    │   ├── first
    │   │   └── +page@about.svelte
    │   └── second
    │       ├── +layout.svelte
    │       ├── +page.svelte
    │       ├── a
    │       │   └── +page@about.svelte
    │       └── b
    │           └── +page@.svelte

之后再 routes/layout.svelte 文件夹里面,我们就可以直接导入,这样非常方便。如下代码:

<script>
    import Header from '$lib/header.svelte';
    import Footer from '$lib/footer.svelte';
</script>

<Header />
<slot></slot>
<Footer />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值