Svelte-我的新宠物框架
#javascript #网络开发人员 #svelte #sveltekit

不久前,在一个大学项目中,我已经谈论了我在Svelte的经历以及有关框架整体结构的一些新手问题。最近,我正在为大学的最后一篇论文开发原型,并有机会与Sveltekit重新审视Svelte,并希望能解决我的早期问题。

在研究框架本身及其功能时,我遇到了Joy Of Code博客和YouTube频道,我强烈建议那些愿意更多地了解它的人。

开发本身比第一次旅程更光滑,因为我对平台的局限性有更多了解。此外,我几乎瞬间喜欢Sveltekit的结构,很容易浏览和阅读组件和页面。但是我最喜欢的是如何很好地分开逻辑,这是有道理的。好吧,至少对我来说大声笑。

所以,让我们就这个(可爱的)体验来了解我的评论:

项目结构

使用Sveltekit时,您必须将思想付诸实践的第一件事是文件结构上的层次结构。使用布局时,您可以嵌套它们,并将其从最内部到最内向的优先级优先,这为您提供了一个强大的工具来脚手架应用程序。

不好的(或我可能会说)的一部分是我很少看到自己使用文件树来导航项目,因为大多数文件都会有+page.svelte+page.server.ts名称。主要是,我使用了VSCODE的ctrl + p功能来搜索所需的文件。

Svelte File Structure

使用文件与客户端隔离服务器的逻辑真的很不错,因此更容易理解哪个代码运行服务器端以及哪些代码将是客户端。由于我从未与SSR一起完成一个完整的项目,因此我很难掌握它,但这对我有很大帮助,这导致了下一个要点。

服务器端功能

我知道SSR不是Sveltekit的独家,而且总体上没有新的概念(OMG HIIIII php <3),但是这个框架使它变得如此可读和可扩展,以至于它几乎与我在构建系统上的思维过程几乎完全匹配。

我最喜欢的是服务器的生命周期清晰,因此我可以输入+page.server.ts文件并检查我在load上的操作,以及该给定页面上的actions是什么。我觉得它是有条理和干净的,使重复使用逻辑变得更容易编写新代码。

Server code structure

审查我的旧评论

在我的first post上,我问了一些问题,现在我有一个答案(或者至少对此有更多了解)。

成分

我不确定为什么要在这里挣扎。在我当前的项目上,我能够创建这样的组件,并确切地完成我想要的行为。看起来很棒!

另外,我现在看到有时创建一个新组件没有问题,例如,如果有助于可读性,则可以具体。在这个项目中,我更容易让我的感觉引导我采取正确的方法,直到现在,这一切都很好。由于我有时间的紧缩要交付,因此对创建原子组件的严格不太严格,更喜欢使代码运行更好的内容。

Form component

根据我的看法,Svelte社区仍在制作中。有很多人为该框架创造出色的内容,但是距离React还有几年的时间,例如,在快速找到答案和准备使用的组件方面。话虽这么说,我看到Web Components的使用非常有用,现在我不得不回顾一下,我很想使用更多。

身份验证和授权

我的心和灵魂在这个特定的角度去了Sveltekit。布局非常有用且可读,可以完成用户授权。大多数情况下,如果没有登录到试图进入保护区域的用户,我刚刚创建了一种机制来重定向。另外,框架上使用cookie + locals对象管理登录。快速设置,易于扩展。此外,当地人可以轻松地使用内部布局/页面来保护角色。

Authorization with layouts

Saving the user to a hook

更新的最终想法

如标题所述,现在Svelte和Sveltekits是我的宠物框架。尽管我在React,Vue和Angular方面有多年的经验,但我发现Svelte使我对复杂的文件/文件夹结构的担心较少,提供了更多时间来为我的项目创造强大的逻辑。

这样做肯定很奇怪(主要是因为我们不习惯它),但是我可以自信地在上面写简单的后端代码,例如,我无法掌握下一步和NUXT。可以肯定的是,我们有可扩展性的问题,但是对于小型系统,我会全力以赴,并对它感觉良好。

对于那些想看看项目的人来说,这是github link。由于时间,它有很多未完成的想法,但是最终通过这项技术进行端到头项目真是太好了。我期待为这个社区做出贡献,并看到它在未来的促进中更加促进。

我很想了解您在此框架上的经验以及您对这项技术的未来有何看法:D