【问题标题】:How can I ignore default layout in svelte-kit?如何忽略 svelte-kit 中的默认布局?
【发布时间】:2022-01-13 01:41:23
【问题描述】:

./routes/login 页面需要不同的布局...我试图忽略主要的 ./routes/__layout.svelte 文件,因为我不需要侧边栏。

<script>
    import NavBar from '../components/NavBar.svelte';
</script>

<main>
    {#if segment === 'login'}
        <section>
            <slot />
        </section>
    {:else}
        <NavBar />
        <section>
            <slot />
        </section>
    {/if}
</main>

<style>
    main {
        display: flex;
        justify-content: flex-start;
    }

    section {
        padding: 2.4rem;
        width: 100%;
        background-color: #f2f6fa;
    }
</style>

我收到一个错误segment is not defined

【问题讨论】:

  • {#if 段 === '登录'}。什么是细分?
  • 不知道...只是从一些老工兵 SO 问题中得到的。我让它与page 一起工作,但我仍然想知道是否有一种方法可以在忽略主布局的路由目录下创建布局。
  • 我会说,Svelte 和 Sveltekit 有很多东西与旧的教程和视频不一致。我发现最好坚持基本原则(docsdemos)坚持最新版本的 Sveltekit 并自行开发。哎呀。也打算添加svelte tutorial stuff
  • 我实际上开始从 svelte 转向简单的旧 javascript 和 web 组件。除了简单的路由和简单的状态管理之外,我真正需要的东西并不多,但这可以通过一些简单的 20 行代码来完成。
  • 是的,但是...服务器端渲染、预编译、本地化 CSS 的概念有点酷。但是,是的,很多事情都是困难和令人沮丧的。最糟糕的是,您将收到一条错误消息并显示毫无价值的错误消息。 StackOverflow 中的提交也不是很有帮助。

标签: sveltekit


【解决方案1】:

为什么不直接重置布局,这是 sveltekit 内置的。只需在 /login 路由中创建一个名为 __layout.reset.svelte 的文件。然后你可以把你想要的所有组件放在文件中 https://kit.svelte.dev/docs/layouts#resets

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-09-26
    • 1970-01-01
    • 2012-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-27
    相关资源
    最近更新 更多