我转发了一张图到前端群,大周末的群里已经爆炸了

4 天前
 kuanat

图片是这个:

https://imgur.com/XiMulEC.jpg

来源是 jordwalke reactjs 作者:

https://x.com/jordwalke/status/1875336115009573268

本意是想调侃一下,没想到对这个事情的认知分歧竟然这么大……

这个问题可能和这两天火热的 Go 话题有点像,要可读性还是要生产力,还是做成年人?

16907 次点击
所在节点    程序员
108 条回复
asdfsadfsdf
3 天前
@96 你是说 github 现状吗
X_Del
3 天前
@Leviathann React 的确是爸爸。
june4
3 天前
楼上竟然有人说 HTML / CSS / JS 并不适合写 UI🐶
这套写 UI 只有一个缺点,性能没有原生高,其它在灵活性可调试性所有方面秒杀各种原生方案。
visper
3 天前
当从美观可读来说,vue 完胜。整洁一点,看起来就和 html 差不了多少。当然灵活性就差 jsx 一点了。
marcong95
3 天前
就这个图而言,在 react 没火之前下面两种类型的形式才是真 template syntax 吧,react 火了连 template syntax 的名字都要抢走了么。糊三元运算符这种虽然理解是可以理解,但是我觉得这才算 mental illnesses 吧。。。。
TimPeake
3 天前
@96 你还在真别说,我记得 npm 上有个包,就几行代码,好像上百万的下载量?
Justin13
3 天前
我倒是觉得三件套是最合适写 UI
因为其他的语言也好,框架也好,也是逃不脱这三样,一样有组件,样式,逻辑
无非是默认分离罢了,如果你喜欢一样有 jsx,css-in-js 给你选
最烦的就是强迫一种范式全堆一块写所有,等你遇到巨大屎山,就会想起分离的好了
AlexHsu
3 天前
@june4 浏览器技术什么都在写 ui 不是说他有多好 是 ui 圈的技术已经烂透了
wangxiaoer
3 天前
@SoyaDokio 没有本质区别,就是一坨黑色巧克力。
dylanqqt
3 天前
@96 太赞同了
bojackhorseman
3 天前


yyx:cnm ,听见了吗,cnm
ChefIsAwesome
3 天前
react 里,jsx 写的 component 可以当变量,可以传到函数里当参数,可以 return 。
类似的还有 js 里的 promise ,一个还没发生的事情,可以赋值给变量,可以当参数。
js 里的函数,也是如此,即所谓的 first class 。
这种抽象方法,能帮助你更容易的做拆分组合,才是上面几种方法的亮点。讨论模板 if else 怎么写,真的是不得其要领,浪费了 react 这么好的工具。
chandlerbing9317
3 天前
后端,感觉 vue 直观很多,好维护很多
hxtheone
3 天前
不管是不是写模板, 三元表达式套三元表达式都是纯纯的 mental illness
iv8d
3 天前
在 JS 里写 HTML 没人觉得奇怪吗,感觉还是``包裹起来比较合适
geekris1
3 天前
@TimPeake isarray 这个包 5.4kw/week 下载量 本身一共才五行代码 而且现在很多浏览器都支持 但是有最底层的库用这个包 所以 download 飞起
abc1310054026
3 天前
结论:看场景使用。高复杂度用 jsx ,低复杂度用模版语法。

jsx 和 svelte ,vue 的模版语法都不一样,前者基于 js ,而后两者基于 html 。

由于 js 天然的可编程性,jsx 方案在复杂度较大的场景具有更好的可读性。
而 html 天然的可读性,svelte ,vue 方案在简单场景更合适。

目前同时支持 jsx 和 模版语法的似乎只有 vue ?
lambdaq
3 天前
要说清晰还得是 php
chanChristin
3 天前
@iv8d 写多了就还好,如果用``包裹的话编辑器着色和提示会有问题。
cenbiq
3 天前
对我来说,JSX > Vue > Svelte ,JSX 给我一种很自然的感觉

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1102700

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX