展开讨论

经验与复盘经验摘录 · 机器翻译

我对React的问题是它真的很难

我对React的问题是它真的很难。它把自己宣传为容易使用,但实际上并不是。我有20年的编程经验,我处理过很多UI,我用过WinAPI和Java Swing,我对JS和HTML也相当熟悉。我对响应式编程或异步内容没问题。但有时我仍然在React上挣扎。我并不是全职的Web开发人员,我承认,我更像是全栈开发人员,但当我需要编写新的React代码时,我经常遇到很大困难。例如,最近我想在React应用中使用promises。我的意思是:promises是JS最原生的东西之一。React应该对promises有第一类支持。但并没有。所以我开始编写一个自定义的hook,叫做usePromise。就像useEffect一样,但用于promises。这本来不应该很难。但显然React在开发模式下会调用useEffect两次。所以我需要一个可靠的取消机制。在网页中如何取消操作呢?用AbortController,对吧。React听说这个东西了吗?没有。所以我需要在我的usePromise hook中集成AbortSignal。…

源讨论虚拟DOM纯粹是开销原帖 326 条评论 · 导入时统计
2

这条内容在回应什么?

父级讨论 · 节选

ST

> React 并没有为处理数据在应用中上下左右流动时的状态提供系统性的解决方案 那么,首先让我们退一步,承认之前的说法是完全错误的。React 确实为这个问题提供了系统性的解决方案。 其次,它不仅有系统性的解决方案,而且它的记忆化效果很好,因为如果 `children` 属性与上一次渲染相同,React 就不会重新渲染子组件,即使你没有使用 `memo()`。这意味着即使你嵌套了2到3个上下文提供者,更新上下文提供者也非常便宜。 根据我的经验,React 的大问题在于开发者太懒了,他们顽固地拒绝阅读哪怕是最简短的文档,即使他们正在遇到新的范式,比如声明式和响应式 UI。结果就是他们自己制造了一个巨大的混乱局面,然后却把责任归咎于框架。 你可以让 React 运行得很快,…

完整原文

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 2

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

AF

我越来越觉得React想要脱离JS和网络。也许是为了更好地适应React Native,我不太清楚。但React想要成为它自己的整个世界,有时候学习它真的让人精疲力尽。

完整原文
HA

我很抱歉,但我没有你的经历。我觉得React非常容易,除了创建基础组件和骨架的短暂时期外,其他开发时间都进行得非常快。顺便说一句,我认为在严格模式下React在开发时会运行组件两次,所以不使用严格模式可以避免这一点,你可以在useEffect中使用普通的Promise。

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。