首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

尤大亲自评测 Vue3 和 Svelte(19个组件后Vue更好!)

(期待的眼神,以为尤大要写 Svelte 代码来进行评测了。 Vue 大家都很熟悉了,如果你不知道 Svelte 是啥?可以看后起之秀前端框架 Svelte 从入门原理。...这是因为在一个 bundle 的应用程序,这些 imports/exports不需要或在多个组件之间共享。...Svelte选择最小的运行时,但具有较重生成的代码的成本。Svelte 可以进一步改进其代码生成来降低代码输出?Vue可以进一步改善tree-shaking,使基线(运行时框架)变小?...另外一点框架可以找到更好的平衡点?...还有一点,运行时的框架,对于首屏的渲染也是有一个极大的帮助,你可以将首屏组件进行拆分,运行时的首屏组件其实是非常小的,这对移动端来说非常的友好,因为毕竟使用 SSR 对应服务端还是有一定的压力要求的

1.8K40

Vue 3是最佳选择? 耗时两周从Vue 2迁移到Svelte后:代码执行更快、体验更佳

70%),在 SSR 模式下大 110%; 在理论上,如果一个应用程序包含超过 15.04 / 0.78 约等于 19 个 todomvc 大小的组件,则 Svelte 应用程序将最终比 Vue 应用程序体积更大...在Svelte,开发者可以直接编写自己的HTML。 第六,Svelte 中会自动限定样式范围。这对可维护性来说是个好消息,有助于避免意料之外的 CSS 影响。...由于每个组件的样式都彼此独立,因此问题只会影响特定组件,而不影响其父组件或子组件。 第七,更新数据无需计算属性。Svelte 的使用感受更像是编写纯 JavaScript 代码。...他们可以借此将页面拆分成子页面,以便重用标准变量名称,例如“loading”、“submit”等。另外,布局会直接集成关联的路由当中,这样就增加了树内组织水平、降低了访问难度。...与其他框架相比,Svelte 提高了加载速度,帮助应用程序告别了曾经嵌入在逻辑代码之外的“运行时”。 更佳开发者体验。

2.7K30
您找到你想要的搜索结果了吗?
是的
没有找到

告别 React,拥抱 Svelte:21天重写应用,开发速度翻倍代码量减半!

我们是一个两人团队,可以完全掌控项目。因此,我无法断言 Svelte 是否能像 React 那样,扩展拥有数千名开发人员和数百万行代码的公司规模。但直觉告诉我,它是可以的。...Svelte 具备一些出色的功能,允许我们独立地为单个组件进行样式化。然而,一旦涉及为第三方组件(如来自组件库的组件)添加样式时,情况就变得复杂起来。...在 Svelte 的问题跟踪器,我们可以看到许多关于这个问题及其潜在解决方案的讨论。...9 迁移决策:React Svelte,值得一试? 关于是否应从 React 迁移到 Svelte,我确实无法给出一个明确的答案。...但话说回来,如果你的应用并未达到轻松迁移至其他技术的状态 —— 比如测试不足、端的测试、临时性的 API、不完整的或不可维护的文档,以及使用了团队从未完成迁移的已废弃库或范式等 —— 那么,你恐怕也难以自信地为其添加新功能

16810

为什么用 Svelte 写一个小程序如此快速?我用10分钟就搞定了!

这也是为什么Svelte应用程序的包大小如此之小的原因:所有不需要的东西都不会出现在输出,所以Svelte可以省去运行时中所有不需要的部分。...如果您担心上面的代码将样式化整个应用程序的所有、或标记,请放心,它不会。默认情况下,精简作用域样式,所以它们只适用于定义它们的组件。...一个成熟的应用程序需要某种状态管理、多个组件,以及将这些组件相互集成的方法。 例如,将一个待办事项的显示拆分为一个单独的组件是有意义的,因为我们将添加一些功能,如就地编辑名称或将其标记为已完成。...准备好使用 svelte 了吗 那么,在你的下一个项目中使用Svelte安全?你的经理可能会问,Svelte是否会在未来几年继续存在,或者会像以前的前端框架明星一样被淘汰。...它还使您能够部署许多不同的平台,如Vercel、Netlify、您自己的Node服务器,或者仅仅是一个很好的老式静态文件服务器,这取决于您的应用程序的特性和需求。

2.5K10

Rich Harris 谈论 SvelteKit 和 Svelte 的下一步

SvelteKit 是一个用户界面框架,用于创建自包含组件,将一些标记、行为和样式组合成可重用的组件,开发人员可以在其应用程序内使用它们,如导航栏、博客文章或聊天小部件,甚至是另一个组件内的组件,他补充道...它可以是开发人员想要的任何东西。 “在过去几年中,我们越来越多地看到框架团队意识,我们需要为人们提供工具,以实际构建使用这些组件框架的应用程序,” Harris 说。...它使 React 不再需要在自己的应用程序框架拼凑起来。” 简而言之,如果开发人员正在使用 Svelte 构建应用程序, SvelteKit 支持并提供了最佳方法来实现这一点,他解释道。...Svelte 可以在两个不同的环境运行——在服务器端或在浏览器,它将操纵 DOM。 SvelteKit 使用 JavaScript 构建,并具有服务器/客户端分离的概念, Harris 说。...如果页面需要在无需重新加载的情况下更新,它也可以从服务器获取数据,使开发者能够创建 API 端点,以便在同一应用程序甚至第三方也可以使用数据,他说。

15210

前端框架「React」 VS 「Svelte

我只想从开发人员的角度看看,在使用 Svelte 和 React 开发应用程序时,感觉好吗?有趣?直观? 开工!...「构建应用组件」 运行完上述命令后,你会注意 Svelte 和 React 各自生成很多很多的文件,感兴趣的话,可以随便浏览看看这些生成的文件。...然后是 HTML 代码,你还可以在 标签编写样式代码。有趣的是,组件的样式代码只对当前组件有效。这意味着在组件为 标签编写的样式不会影响其他组件的 元素。...不管是 Svelte 还是 React ,Heading 和 Button 组件都被引入 App ,这样就可以被当成 App 的子组件使用。...这个做法有一点点笨拙,但考虑这个样式仅在组件内有效,我们也是可以接受的。

3.5K30

Svelte中文文档 1基础介绍

如果你有什么好的想法,或者翻译存在什么错误,欢迎指正,非常感谢。 一.介绍 欢迎来到Svelte的教程。它将使你轻松学会构建一个快速的小型web应用程序。...你还可以查阅API文档和示例了解更多Svelte相关内容。如果等不及得话,可以通过阅读这篇文章(60秒快速上手)在本地搭建一个Svelte的例子。...你可以使用Svelte构建你的整个应用程序,或者你可以在现有的代码基础之上渐进式的使用Svelte。你也可以组件作为独立的包在任何地方使用,不会有依赖常规框架的使用成本。...理解组件Svelte,一个应用程序由一个或更多的组件组成。组件是一个可复用的独立的代码块,他由HTML,CSS,JavaScript封装而成。文件后缀写为.svelte。... 重要的是,这些样式是局部的作用域当前组件。他不会在你的应用程序内,改变其他地方的元素的样式。我们将会在下面的内容了解

1.7K71

挑战“三大框架”的解决方案

这意味着你不需要为框架所消耗的性能付出成本,并且在应用程序首次加载时没有额外损失。你可以使用 Svelte 构建整个应用程序,也可以逐步将其融合到现有的代码。...你还可以组件作为独立的包(package)交付到任何地方,并且不会有传统框架所带来的额外开销。发展趋势开发者满意度从2019年开始, Svelte出现在榜单。...而 Svelte 会在编译阶段将代码编译更加贴近dom操作的代码。或者说,Svelte 生成的是命令式的dom创建过程,直接操作Dom。...我们一起来看下编译后的对比:框架名称 sveltereactvue体积1.6k22k42k从上述对比可以看出,svelte 编译后的体积很少,包体积1.6k,对于一般中小型项目而言,整体运行的代码...在基于虚拟 DOM 的框架里,虚拟dom真实dom的转换过程,被封装在运行时里,所以每个组件虚拟 dom 创建过程仅仅是数据结构的表述,更为紧凑,代码产物也就比较少。

53010

Web 框架能解决什么问题?

Svelte 不使用虚拟 DOM diffing 之类的技术,而是编写代码,当你的应用程序的状态发生变化时,外科手术式地更新 DOM。”...有一件事超出了本文的范围,那就是不同框架组件模型,以及如何使用自定义 HTML 元素来处理它。...它们还提供了其他重要的东西,比如重用组件的方法,但这就是另一篇文章的主题了。 框架有用?是的。它们带给了我们所有这些方便的特性。但这是一个正确的问题?使用框架需要付出一定的成本。...Svelte 宣称,虚拟 DOM 完全是一种开销。我同意,但是可能像 Svelte 和 SolidJS 这样的“构建”以及像 Lit 这样的自定义客户端模板引擎都只是单纯的开销?...在本系列的第二部分,我们将会了解,在没有框架的情况下,我们是怎样处理这些问题的,以及我们可以从中学习什么。敬请关注!

1.5K10

React vs Svelte

我只想从开发人员的角度看看,在使用 Svelte 和 React 开发应用程序时,感觉好吗?有趣?直观? 开工!...「构建应用组件」 运行完上述命令后,你会注意 Svelte 和 React 各自生成很多很多的文件,感兴趣的话,可以随便浏览看看这些生成的文件。...然后是 HTML 代码,你还可以在 标签编写样式代码。有趣的是,组件的样式代码只对当前组件有效。这意味着在组件为 标签编写的样式不会影响其他组件的 元素。...不管是 Svelte 还是 React ,Heading 和 Button 组件都被引入 App ,这样就可以被当成 App 的子组件使用。...这个做法有一点点笨拙,但考虑这个样式仅在组件内有效,我们也是可以接受的。

3K30

Rollup作者新作: Svelte Cubed!VRAR 指日可待?

官方也明确说了,不会对 Three.js 对象进行包装,而是直接使用 Three.js 去创建并设置对象,因此需要在代码引入 Three.js ,(个人感觉这样的好处是能够让我们没有成本地从其他数据驱动的...Three.js 项目中,迁移到 Svelte-cubed )。...可以看到如果用 纯 Three.js 去写代码,将会比用Svelte-Cubed 多出好几倍的内容。随着时间的推移,命令式代码也会变得不太容易维护。 通过添加控制器,我们可以轻松进行交互。...此外,由于组件有一个可管理的生命周期,如果你使用Vite(或使用Vite的SvelteKit)这样的框架,你可以 "免费 "获得热模块重载这样的东西。...) 既然 Svelte-Cubed 已经融合了 Three.js ,在 meta 概念崛起的年代,离 VR/AR 还会远

2.3K20

2021 年 JavaScript 明星项目公布,最受欢迎的竟是它?

zx支持在代码嵌入任何bash表达式(ls、cat、git等等),并借助JavaScript模板字面量获得结果。...以下是能够在客户端渲染动态组件的情况: 页面加载时 页面闲置时,前提是它是一个低优先级的组件 当使用浏览器Intersection Observer API时组件可见时 Astro最大的优势在于其页面可以使用...如今越来越多的工具以及组件Svelte纳入选择框架(其中包括Vite)。而Svelt的作者Rich Harris于去年加入Next.js后的Vercel团队。...与Next.js类似的是,Svelte拥有自己的元框架,即SvelteKit,可构建高性能应用程序。 排名第五的是Solid,是React的替代工具之一。...而Next.js则非常看好swc的发展,作为一个可扩展的Rust编译器,swc可将Babel插件移植Rust上。 Rust是最受欢迎的的JS语言,但它并不是唯一的语言。

1.1K30

2021 年 JS 明星项目排名第一竟是它?

zx支持在代码嵌入任何bash表达式(ls、cat、git等等),并借助JavaScript模板字面量获得结果。...以下是能够在客户端渲染动态组件的情况: 页面加载时 页面闲置时,前提是它是一个低优先级的组件 当使用浏览器Intersection Observer API时组件可见时 Astro最大的优势在于其页面可以使用...如今越来越多的工具以及组件Svelte纳入选择框架(其中包括Vite)。而Svelt的作者Rich Harris于去年加入Next.js后的Vercel团队。...与Next.js类似的是,Svelte拥有自己的元框架,即SvelteKit,可构建高性能应用程序。 排名第五的是Solid,是React的替代工具之一。...而Next.js则非常看好swc的发展,作为一个可扩展的Rust编译器,swc可将Babel插件移植Rust上。 Rust是最受欢迎的的JS语言,但它并不是唯一的语言。

1.6K10

一文讲透前端新秀 svelte

减少18kb,页面性能指标提升了57%。...2  svelte 适合实际项目? 前面讲到笔者已经将 svelte 运用到公司的实际项目中,并稳定的运行了有一阵子了。在运用到实际项目前,也是在网上到处搜集 svelte 能够胜任的佐证。...在基于虚拟 DOM 的框架里,虚拟dom真实dom的转换过程,被封装在运行时里,所以每个组件虚拟 dom 创建过程仅仅是数据结构的表述,更为紧凑,代码产物也就比较少。...图13 Rich 的演讲 这句话是想表达:svelte 是造了个编译器? 确实可以理解成为 svelte 给 javascript 的编译器做了魔改。...过程感受的是现阶段的 svelte 已经相当成熟,开发过程遇到的问题,基本可以通过官方文档,社区找到解决方案。整体的体验是很顺滑的。

3.8K20

挑战前端“三大框架”的解决方案

这意味着你不需要为框架所消耗的性能付出成本,并且在应用程序首次加载时没有额外损失。 你可以使用 Svelte 构建整个应用程序,也可以逐步将其融合到现有的代码。...你还可以组件作为独立的包(package)交付到任何地方,并且不会有传统框架所带来的额外开销。 发展趋势 开发者满意度 从2019年开始, Svelte出现在榜单。...而 Svelte 会在编译阶段将代码编译更加贴近dom操作的代码。或者说,Svelte 生成的是命令式的dom创建过程,直接操作Dom。...我们一起来看下编译后的对比: 框架名称 svelte react vue 体积 42k 22k 1.6k 从上述对比可以看出,svelte 编译后的体积很少,包体积1.6k,对于一般中小型项目而言,...在基于虚拟 DOM 的框架里,虚拟dom真实dom的转换过程,被封装在运行时里,所以每个组件虚拟 dom 创建过程仅仅是数据结构的表述,更为紧凑,代码产物也就比较少。

35520

都快2020年,你还没听说过SvelteJS?

组件的HTML标签可以直接在文件写出来,例如App组件的HTML部分是: Hello {name}!...style标签然后把该组件相关的样式写在这个标签内,注意这里的样式只会对组件内的元素有效,不会影响其他组件的样式的。...然后在父级组件App,将BookCard需要的参数传给该组件: // src/App.svelte ......代码更改完后,你的页面就可以录入新书并展示书的列表了: 购物车功能 首先我们要为BookCard这个组件的按钮添加一个点击事件:用户点击书本卡片按钮的时候这本书会被加到购物车。...不过有一点可以肯定的是,Svelte由于在一些不复杂的项目中生成的代码远远比React,Vue和Angular小的优势会在一些性能不那么好的嵌入式操作系统中大放异彩。

3.1K10

前端是不是又要回去操作真实dom年代?

我觉得webpack5的Module Federation设计,就考虑到了这一点,下面是官方的解释: 多个独立的构建可以组成一个应用程序,这些独立的构建之间不应该存在依赖关系,因此可以单独开发和部署它们...import from http我想只是解决了一个点的问题,就是不用手动安装依赖本地磁盘 前段时间我写过,在浏览器本地运行Node.js 这个技术叫WebContainers技术,感兴趣的可以去翻翻我公众号之前的文章...我们所有的一切开始,都直接启动一个浏览器即可 浏览器的webIDE,可以直接引入远程依赖,浏览器可以运行Node.js,使用的都是esm模块化,不需要打包工具,项目启动的时间和热更新时间都非常短,构建也是直接可以在浏览器构建...传统框架如 React 和 Vue 在浏览器需要做大量的工作,而 Svelte 将这些工作放到构建应用程序的编译阶段来处理。 与使用虚拟(virtual)DOM 差异对比不同。...当用户在你的页面进行各种操作改变组件的状态时,框架的runtime会根据新的组件状态(state)计算(diff)出哪些DOM节点需要被更新 可是,这些被打包进去的框架,实在太大了。

1.3K30
领券