全国服务热线:
当前位置: 首页 > 行业动态行业动态

杏彩体育,尤雨溪:Vue 3 开发中的经验和教训

发布时间:2024-08-01 18:30:45点击量:

  首先,每个变更都可能引发许多小的破坏性修改。尽管看似可以单独管理每项变更,但由于变更之间存在关联,因此复杂性呈指数级增长。

  长远来看,这些策略对于 Vue 的发展至关重要。在短期内,Vue 不会考虑任何重大变化,而是专注于改进和优化现有的功能。未来,希望 Vue 3 能够成为一个稳定的基础,为 Vue 的进一步发展提供坚实的基础。

  第二个错误是低估了 Vue 3 升级对生态系统库的影响。Vue 团队原本认为,在面临如此巨大的工作量时,库的开发者不需要将他们的现有库调整为 Vue 3 的兼容版本。

  结果是,当 Vue 3 进行了许多内部 API 和其他内部行为的变更时,依赖这些内部行为的大型库升级到 Vue 3 变得非常困难。这导致了主要生态系统库(如 Nuxt 和 Beautify)的升级过程变得漫长而复杂。

  为了有效应对这些潜在问题,Vue 引入了一个生态系统自动化持续集成系统,该系统专门针对 Vue 核心的下游生态系统依赖和依赖 Vue 的下游项目进行测试。

  目前,已经成功集成了超过 15 个项目,未来还将继续增加。在每次提交变更之后,该系统都会对所有下游库进行测试,确保在发布前就能发现潜在的问题。一旦发现问题,可以与这些生态系统库的作者合作,解决可能出现的兼容性问题。

  除此之外,Vue 团队希望明确禁止使用内部 API,因为他们发现这些内部 API 是导致库子组使用 Vue 时遇到困难的主要因素。杏彩体育app下载

  幸运的是,随着 Type 在大多数项目中的普及,现在可以在类型级别和运行时级别实施这种禁止。对于官方工具或库,仍需要公开一些内部 API 以实现连接。然而,对于无法直接控制的生态系统库,将逐步从类型定义中移除这些私有 API,以确保如果这些库试图使用它们时就会引发错误。

  第三个错误就是:分开发布。Vue 3 核心在 2020 年 9 月发布,然而许多生态系统组件仍在开发中。初期文档存在一些问题,并且 composition API 没有在文档中作为首要概念进行介绍。在 Vue 核心稳定版发布时,官方库、迁移构建和开发工具支持尚未完善。

  Vue 团队之所以这样做,是因为认为这些功能很重要,能够尽早推出,以鼓励生态系统中的库和开发者开始尝试和使用新的功能。这样做的结果就是,在没有完整的生态系统支持的情况下发布,给很多早期采用者带来了困惑。

  更重要的是,在发布大型版本之前,需要积极主动地与利益相关者和生态系统合作,通过与库维护者进行合作,收集反馈并提前升级项目。这种合作方式可以更加积极主动地推动生态系统的改进和发展。如果希望在未来实现更大的变更,这一点是必须要改进的。

  现在,类型检查已成为前端解决方案的必备要素。当我们审视主要的前端解决方案时,可以发现 Type 的集成和支持已成为人们首要关注的事项。

  采用 Type 已被证明在长期项目和大型团队环境中显著提高了代码的可维护性。在 Vue 的代码库中使用 Type 也极大地增强了 Vue 自身的可维护性,为未来的迭代和扩展打下了坚实的基础。

  第二个正确的做法是采用了组合式 API。最初这受到了人们的质疑,但对于 Vue 来说效果非常好。引入组合式 API 时,它受到了 React hooks 的启发,但是它根植于 Vue 自己的响应性系统。

  实际上,仍然有人喜欢 Options API,但它存在一些组合式 API 没有的限制。这部分原因是 Vue 的用户群体已经发生了变化。在早期,大多数用户关注的是小到中型使用案例,重点是易于集成到现有的后端系统中。但随着时间的推移,Vue 的维护者们看到用户构建了更复杂和要求更高的使用案例,以及大规模单页面应用。

  为了让 Vue 适应不断变化的用户群体和行业需求杏彩体育,我们必须提出一些解决新问题的新方法,其中可扩展性是其中一个主要问题。因此,组合式 API 本质上是为了解决这种可扩展性问题而发明的,旨在提供一种解锁这种可扩展性的方法,同时尽可能地保留根植于 Vue 的用户友好性。虽然在早期有很多争议,但 Vue 团队的决策最终被证明是正确的。

  那些采用组合式 API 的开发者发现它确实有很多好处。组合式 API 的出现也催生了强大的社区努力,例如 VueUse,它提供了一系列极其有用的实用程序,解决了许多问题。这些问题并不适合包含在 Vue 核心中,但社区很好地解决了这些问题。事实上,VueUse 可能是直接由组合式 API 带来的最大好处之一。

  Vue 在开发者体验方面做出了明智的选择,这一点也得到了回报。这一选择促成了备受欢迎的 Web 构建工具 Vite 的诞生,它源自一个专为 Vue 开发的开发服务器原型。如今,许多框架都在利用 Vite,包括 Nuxt。

  Vue 对其 IDE 方面的投资也已经取得了丰厚的回报,形成了一个扩展的生态系统,使 Web 开发人员受益良多。这些 IDE 投入催生了 Volar 的诞生,它是一个子项目的总称,涵盖了 Vue 语言服务器和 Vue TSC。Vue TSC 是一个命令行界面,它包装了 Type,并为 Vue 组件提供了命令行时间检查功能。

  这套工具最初仅为 Vue 而设计,类似于 Vite,但现在已经扩展成为一个工具集生态系统,帮助其他框架构建更出色的 IDE 和 Type 支持。Volar 目前正逐步转变成一个框架无关的核心,不仅支持 Vue,还支持 Astro、MDX 等其他可能采用它的框架。

  这是 Vue 生态系统所独有的现象,我们看到很多源自生态系统的创新理念开始产生比 Vue 生态系统更大的影响。

  Vue 3 成功实现了他们设定的目标,包括提供更好的性能、更强大的类型支持、更优秀的可扩展性和更优的开发者体验。随着 Vue 2 的支持在本月结束,Vue 3 的下载量已经接近 Vue 总下载量的 48.8%。在过去一年中,Vue 3 的采用率几乎翻了一番。这表明 Vue 3 在迅速赢得开发者的青睐和信任,并在前端开发领域产生了深远的影响。

地址:广西壮族自治区南宁市武鸣区双桥镇伏林村5号厂房  电话:  手机:18013147399
Copyright © 2012-2023 杏彩平台官网(中国)官方网站xingcai注册 版权所有  ICP备案编号:桂ICP备2023001857号-9