高性能全端网页应用程序框架SvelteKit达1.0

历经两年的开发,全端网页应用程序框架SvelteKit终于达到1.0版本,这代表开发者已经可以将SvelteKit用于开发产品应用程序。SvelteKit提供有别于传统框架的开发灵活性,并且可以被部署到包括无服务器服务等任何JavaScript环境。

SvelteKit构建在Svelte之上,而Svelte是一个近年新兴的热门UI组件框架,能够将来源编译成为最小,且具高度优化的JavaScript,提供开发者一种有别于传统的方式,来构建网页应用程序,与React和Vue等这类框架不一样的是,React和Vue框架会在用户的浏览器,执行需要处理的工作,而Svelte则是将这些工作带到编译阶段处理,如此便能够在构建应用程序的时候,生成经高度优化的JavaScript应用程序。

使用Svelte组件框架,虽然让开发者能够更简单地直接构建用户接口,但是需要解决的问题也更多,包括开发者要学习构建源码、添加服务器渲染,甚至是处理资料的方法等,而应用程序框架SvelteKit的目的,便是要解决这些问题,满足Svelte开发者构建生产应用程序的需求。

SvelteKit与传统多页面应用程序架构不同,在初始服务器渲染页面加载后,默认替客户端导航,而这将可以实现更快的页面转换,以及在页面间保存状态,并且使用更少的资料,而且也避免在每次页面加载时,重新执行第三方脚本。

传统的服务器框架便需要一个程序生成HTML,另一个在客户端运行,在SvelteKit中,开发者可以只使用一种语言进行开发,而不是使用两个语言,开发紧密结合的应用程序,。SvelteKit能够在任何JavaScript环境运行,因此开发者可以将应用程序部署到传统的节点服务器,或是使用无服务器服务,在边缘执行。

SvelteKit也与静态网站生成器不同,用户可以使用个性化或是动态资料构建应用程序,不用等到页面加载后,才通过浏览器获取资料,因此不会影响性能,或是使布局产生变化。

SvelteKit也使得开发者能够更零活地构建应用程序,官方提到,许多框架都默认一种正确构建应用程序的方法,而无论是静态或是服务器端渲染的选择,在SvelteKit都没有绝对,用户可以根据需要,综合选择要使用的方法,像是在用户查看的页面使用预渲染的方式呈现,而REPL则是以动态资料渲染。

SvelteKit使用高性能构建工具Vite,支持热模块重新加载和各种TypeScript相依项目,开发者可以从Vite和Rollup生态系中安装组件。在开发者创建SvelteKit项目时,就能够选择将TypeScript、ESLint、Prettier、Playwright和Vitest等工具添加到项目中,还能够使用NPM组件。

要使用SvelteKit CLI,开发者需要在本地安装Node.js,但框架本身不相依于任何平台,应用程序可以被安装至任何执行JavaScript的环境。