不知道你怎么想,但我听说过 SvelteKit 中的这个新路由系统。我第一次听说这个是与+error.svelte
我在此处找到的文件官方文档 https://kit.svelte.dev/docs/routing#error。不久,我还看到了其他文件,例如__layout.svelte
文件有一个+
在文件名前面签名,如下所示:+layout.svelte
在文档上。
所以我一直想知道:
- 如何从 SvelteKit 的旧路由系统迁移到这个更新的路由系统?
- 如果可以的话如何让SvelteKit来做
自动地?
- 这个新的路由系统有何重要性?
- 在安装新版本之前,请更新到这些更改之前的最新版本 -
@sveltejs/[email protected] /cdn-cgi/l/email-protection
— 在运行迁移之前确保您的应用程序适用于该版本。
- 运行以下命令:
npx svelte-migrate routes
通过运行命令并点击y
,你应该看到这个:
-
Done!是否要遵循建议的后续步骤取决于您,但我建议您执行这些步骤。 :)
以下为补充信息。
阅读以下几行是可选的。
我找到了一些很好的材料来提出上述解决方案:
迁移指南
引用 Rich Harris 的话page https://github.com/sveltejs/kit/discussions/5774:
新版本的 SvelteKit 包括一项设计改革,需要
对您的应用程序进行一些更改。
要开始迁移您的应用程序,请运行以下命令:
npx svelte-migrate routes
安装前您需要执行此操作
新版本!我们建议更新到最新版本
在这些改变之前——@sveltejs/[email protected] /cdn-cgi/l/email-protection
— 并确保您的
应用程序在运行迁移之前可以使用该版本。
这将重命名您的路由文件夹中的文件(请参阅此评论至
了解有关更改的更多信息 https://github.com/sveltejs/kit/discussions/5774#discussioncomment-3294867),迁移一些更改
自动并用链接回的错误注释您的代码
此页面并告诉您需要手动更新哪些内容。你可以找到
通过在代码库中搜索这些错误@migration
.
变更原因
我读过的最重要的原因之一就是这个,再次引用里奇·哈里斯的话:
有多种方式来表达路线。src/routes/foo.svelte
and
src/routes/foo/index.svelte
是等价的,并且有两种方法可以做到
事物总是令人困惑的。每个都有缺点——太多index.svelte
在编辑器中打开的文件会让人感到困惑,但是foo.svelte
使相关文件并置在一起变得很尴尬。我经常发现自己
移动foo.svelte
to foo/index.svelte
随着路线变得越来越多
复杂(例如,它需要一个专用的错误页面,或者它获得一个子页面
路线,或者我需要将某些东西分解成一个单独的组件,或者
它需要一个页面端点,等等)。这些改变成本高昂且
烦人,我总是因为不总是使用文件夹而自责。
您可以阅读所有其他好的理由在这个链接上 https://github.com/sveltejs/kit/discussions/5748.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)