大家好,我是农村程序员,独立开发者,前端之虎陈随易。
- 个人网站 1️⃣:https://chensuiyi.me
- 个人网站 2️⃣:https://me.yicode.tech
如果本文能给你提供启发或帮助,欢迎一键三连,给我一些支持和鼓励,谢谢。
前端又打起来了兄弟们,祖师爷都下场了。
起因是2025年1月2日,有人在某平台发了一个 jsx
、svelte
和 vue
的 if
条件语法的对比图。
配文是这样的:
也许我觉得我有偏见,但 Vue 拥有最简洁的模板语法。
易于书写且足够富有表现力。
你的看法是什么?
评论是这样的:
我喜欢 JSX,因为它本质上就是 Javascript。
在这种情况下:我喜欢 Vue 本质上只是 HTML。
无法复制我的 jsx 代码并在任何 js 运行时运行它,以为它是 js?
JSX 感觉就像没有模板引擎的 PHP。
svelte 和 vue 让你依赖于 dsl 及其语法。jsx 只是 javascript。
只要能用就没关系。我更喜欢 Vue,但最终用户不会在意。
我编写了各种使用 Vue 风格语法的工具,因为它可以通过内置浏览器功能轻松处理。
Angular 非常简洁。
Vue 实际上是我最不喜欢的。它作为属性被埋没了,很容易被忽略。不过,当我做我的第一个 Vue 项目时,我确实很喜欢它。
事实上,我更喜欢 JSX 和 Svelte 的语法,而不是 Vue,因为它们将分支与标记分开。使用 for 循环时,我永远记不住“for”是属于< ul >还是< li > 。
我认为我仍然更喜欢 React,因为它更接近 JavaScript,没有自定义模板语法。
喜欢 Vue 在这里遵守 HTML 标准。
最好的模板语言不是发明另一种语言。只需使用 JS 并执行您想要的任何条件逻辑即可,这意味着只有 JSX 是正确的。
Vue 指令感觉就像是 HTML 的自然扩展,使用了相同的现有模式 - 属性。Svelte 感觉像是在侵入一些不该存在的东西,而 JSX 感觉就像 JavaScript 忘记了它不是一种标记语言。
我喜欢 Vue,是的,它的语法非常干净和简洁。
我从上个月开始使用 Vue,到目前为止我非常喜欢它的语法。
我最喜欢 jsx,因为它的代码很清晰,没有元标签。
我同意。在我看来,在所有 js 框架中,vue 是最容易使用的。
我认为 Svelte 做得最好,但我真的很喜欢在 vue 中开发,它的指令很酷!
到这里,评论还是比较友好的,大家各抒己见,分享自己的观点和使用的体验。
直到有人带有情绪的转发,图中,mental illnesses
是 精神疾病
的意思。
意思就是说,写 vue
和 svelte
的都是 精神病
,一石激起千层浪,各路豪杰纷纷下场。
比如我关注的 2 个大佬的评论如上。
我是亚洲人,我更喜欢亚洲食物,而不是西方食物。
我想这会让所有西方人都精神错乱。
最终,Vue 祖师爷也下场了。
为了引起误会,又附带了一个长文,全文翻译如下:
唉,似乎很多人没有意识到原文是一个笑话 (这就是我发表这篇文章的原因),而且很多人不明白这篇文章的重点。
人们的品味各不相同,无论是在食物还是在技术方面。部分品味是天生的,部分品味是后天习得的 (比如文化教养或编程之路)。
具体来说,对于 JSX 与模板语法,主要取决于您在处理表述性内容时,大脑是习惯于 JS 优先还是 HTML 优先。这可能会受到您如何进入 Web 开发以及您花费最多时间构建哪种应用的影响。
争论哪种更好而不承认我们作为开发人员的差异,就像争论哪种菜肴更好而不承认我们作为人类的文化教养差异一样。你可以痴迷于对你来说很重要的小事,但这并不能改变这样一个事实:世界上很大一部分人吃着你不喜欢的食物却过得很好——也有很大一部分网络开发人员用你不喜欢的技术构建东西却过得很好。
我并不是把所有的技术选择都等同于食物选择——有时,在确定使用什么来完成特定任务时,存在很大的利弊,但 JSX 与模板语法不是其中之一。使用你喜欢的或你必须使用的东西——这样就没问题了。这是你应该少花时间争论而专注于更有意义的选择的事情之一。
其中一个对话如下:
问:我的观点是,如果它不比 js 更好(如果有的话),为什么还要发明新的模板语言呢?
答:既然已经有了亚洲菜,为什么你们还要发明西餐呢?!
总而言之呢,前端界果真是多事之秋,不过我觉得也没什么不好,总比死气沉沉好。
我自己是 Vue 的忠实粉丝,我只用 Vue 和 Nodejs。
感谢 Vue,让我鸟枪换炮,在2024年自驾 8000 公里,实现了一直以来自驾游的梦想。
希望2025年,Vue 越来越好~
本文资料来源:https://x.com/youyuxi/status/1875894552432939084