当前位置: 首页 > 后端技术 > Node.js

专访Vue作者游玉玺:VueCLI3.0重构的原因

时间:2023-04-03 23:47:24 Node.js

1.为什么需要对VueCLI进行大规模修改?游玉玺认为,老版本的VueCLI本质上只是从GitHub上拉取模板。这种拉取模板的方式存在几个问题:(1)在单个模板中支持过多的选项会使模板本身极其复杂且难以维护,而提供多个模板一方面会让初学者无所适从,另一方面,难以共享功能或在模板之间迁移。CLI3对此的解决方案是以插件的形式支持多种不同的功能。一个插件对应一个功能(比如单元测试),避免了多个模板,提高了CLI本身的可维护性。同时支持第三方插件,方便用户实现各种自定义功能扩展。(2)对于拉取模板生成的项目,所有的webpack配置和构建脚本都直接包含在仓库中。一旦用户修改了这些部分,就很难获得源模板的更新和升级。对于CLI3生成的项目,核心的webpack配置和构建逻辑被封装在依赖项中,同时允许用户通过配置文件进行低级修改。这样做的好处是,在CLI更新后,用户即使进行了自定义修改,仍然可以升级。(3)由于封装了核心配置,我们有更多的空间去做更复杂的功能和优化,比如构建时的性能优化(缓存/多核)、现代模式、生成web组件等,而不用担心用户的项目中充斥着大量与应用程序本身无关的构造代码。同时,随着新的Web平台规范的实施,我们可以继续对CLI进行各种针对性的优化,用户只需升级即可获得。2、增加GUI的目的是为了降低使用门槛。长期以来,人们一直认为GUI好用,CLI高效。VueCLI3.0添加了GUI。游玉玺解释说,主要是为了降低使用门槛,因为命令行显示的交互非常有限,所以默认用户对创建项目涉及的各种工具和配置项都有基本的了解。GUI可以提供更多信息来帮助用户了解这些东西的用途。此外,GUI还可以提供一些命令行难以显示的信息,例如通过可视化图表分析每个打包模块的大小和比例等。一些UI库/Vue封装的框架也提供脚手架。游玉玺认为,大多数库不需要特殊配置。提供脚手架的库一般需要一些特殊的配置来提升开发体验。CLI3其实就是希望为这种情况提供一个标准的解决方案,所以它提供了一个非常强大的插件API。理想情况下,所有第三方UI库都可以通过插件连接到CLI3。比如vuetify就有对应的CLI插件。至于框架(比如nuxt),既然涉及到更高层次的东西,有自己的脚手架也无可厚非。3、vue由独立团队维护,单点问题依然存在。前段时间,Vue公司在招聘全职开源工人。相信大家都很好奇,Vue公司到底是不是一个盈利组织,他们是如何获得资金维持运营的?对此,游雨溪回应称,目前Vue是独立团队维护的,不是那种拿投资的创业公司。资金来源是赞助商、广告等,现在大部分子项目都交给了团队成员,Vue核心库还是主要由尤雨熙自己维护。vue小伙伴可以复制以下链接,用浏览器打开:https://vuejs.org/v2/guide/te...关于单点问题,游雨溪表示,目前的单点问题肯定是存在的,他接下来的计划是细化项目的治理模型,减少项目对他个人的依赖,但这需要时间慢慢落实。从前端的角度来看,Vue其实是一个非常年轻的项目。现阶段依赖核心开发人员是很正常的,甚至可以说是必须的。很多现在很重要的项目,比如linux,都存在一定程度的单点问题。也很难预测Guido宣布退休后Python会如何发展。4.独立开发者:自由与风险并存。前端总流行一句话,“不更新,我学不会”。曾经有人恶搞P图,说尤雨熙要发布Vue4.0,尤雨熙回应称,技术职业本身就是一个需要靠不断学习来保持竞争力的职业。如果只是抱着学一门手艺到老的心态去做,可能比你想象的更早被淘汰。作为一名独立开发者,尤雨熙认为自己的时间可以完全自由支配,不需要加班。在工作和家庭的平衡上,可以说比在公司工作要好很多。当然,独立开发的另一面是他需要承担更多。压力和风险,还有足够的自律,所以可能不适合所有人,但对他来说,现在的生活状态让他很满意。