Svelte 是否仅限于单页应用程序 (SPA)?

Is Svelte limited to single-page applications (SPA)?

Svelte documentation 指出:

Svelte converts your app into ideal JavaScript at build time, rather than interpreting your application code at run time.

...

It is similar to JavaScript frameworks such as React and Vue...

在上述上下文中,我的问题是:

Svelte 是否仅限于构建单页应用程序 (SPA),是否可以用于创建多页应用程序 (MPA)?

Svelte 是否仅限于构建 Single-Page 应用程序?

没有。 Svelte 是一种构建组件的方式。 Svelte 编译为 vanilla JS 类,因此您可以轻松地将其作为在页面上执行特定操作的小组件或作为 MPA 结构中充当完整页面的组件(均在运行时启动)。

它可以用于创建 Multi-Page 应用程序 (MPA) 吗?

不能直接使用 Svelte(因为它只生成组件),但可以使用 SvelteKit。老实说,我认为 SvelteKit 是一个 SPA 框架(因为它的行为就像一个),但显然它确实为你的所有路由创建了真正的 html 入口点。在初始页面加载后,它只是换掉需要更新的网页部分,不再加载完整页面,因此导航速度很快,您也可以获得 server-rendered MPA 的好处!

正如您已经注意到的,Svelte 很棒,因为它可以编译成普通 JS。因此,您甚至可以使用编译后的 Svelte 来替换现有的原版页面。虽然我还没有尝试过,但如果您想使用它,我想它可以与 Express 一起使用。正如 cascading-jox 所指出的,SvelteKit 是一种用于路由页面的简洁集成方法。 Documentation for it 看起来与 Next.js 路由非常相似。