SvelteKit为多页应用程序提供了一个“框架”,其中两个特性对我来说特别有趣:( 1)路由系统(src/page);( 2)服务器端呈现。
我的问题是: SvelteKit是否依赖NodeJS?我使用Go作为后端服务器,它可以很好地处理VueJS前端。我只需将webpack ( dist文件夹)的输出复制到go源代码树中,并将其编译成单个可执行文件。
这适用于SvelteKit吗?
编辑
背景:我主要是一个围棋程序员。在我了解Svelte之前,我纯粹使用Bootstrap + vanilla进行前端开发。我试过VueJS,但放弃了。这个问题的目的是要问:是值得学习SvelteKit还是只学习Svelte?
换句话说,SSR对我来说“很好”。但是,如果“路由”架构没有节点就不能工作,那么我觉得我最好还是选择Svelte,或者,还有其他选择SvelteKit的理由吗?
发布于 2022-05-30 16:33:09
我想你的意思是静态渲染
我只是简单地复制webpack的输出
如果您想使用SvelteKit进行静态呈现,请安装@sveltejs/adapter-static@next并将其作为import adapter from '@sveltejs/adapter-static';插入到svelte.config.js中。
您可能必须在配置中设置一个额外的属性prerender,这样Svelte知道对页面中的任何逻辑进行预录制,这样它就可以正确构建。
这样做的一个示例svelte.config.js文件:
import adapter from '@sveltejs/adapter-static';
/** @type {import('@sveltejs/kit').Config} */
const config = {
kit: {
adapter: adapter(),
prerender: {
default: true
}
}
};
export default config;这样,当您在包含项目的目录中执行npm run build时,它将输出到build文件夹。
发布于 2022-05-30 16:34:44
SvelteKit的服务器端路由和呈现特性与其在Node中的实现有关。
特别是,Svelte组件的服务器端呈现在一定程度上不可避免地依赖于Node,因为Svelte编译器是用TypeScript编写的。
SvelteKit旨在成为web应用程序的一个一体化解决方案,但您可以将其配置为输出预先呈现的静态站点(请参阅leoDog896的答案),客户端的路由保持不变。
设置一个Go服务器为静态站点服务应该是很简单的,这样路由就可以像预期的那样工作了。唯一缺失的部分是SSR,它与SvelteKit自己的服务器实现紧密相连。
https://stackoverflow.com/questions/72436530
复制相似问题