首页
注册
登录
wanghaoipv6 最近的时间轴更新
wanghaoipv6
V2EX 第 253782 号会员,加入于 2017-09-11 18:23:32 +08:00
wanghaoipv6
提问
技术话题
好玩
工作信息
交易信息
城市相关
wanghaoipv6 最近回复了
2021-02-21 08:18:06 +08:00
回复了
wxsm
创建的主题
›
程序员
›
useEffect 为什么不能支持 async function?
应该是个设计上的取舍?如果开了「返回值是 Promise,就忽略」这个口子,那很多人就会想「为啥不把其他类型也顺便忽略了?」,然后大家就随便返回,慢慢开始忘记有「返回销毁函数」这件事。这个代码就变成了屎山。
我觉得看 React 可以把它想成是一个没有语言倾向,随时可能用 rust 重写的东西。react 的设计者兴趣点也不在 JavaScript 上(否则就会像 vue 那样狂用 proxy 了)。这种视角下你提到的「 koa2 极致的代码艺术」就变得非常的不优雅。(我猜的,我没怎么用过 koa2,不太清楚代码艺术具体指什么,不过我猜想是强依赖于 JavaScript 本身的特性发展出来的语法糖?)。
因此,「不管类型,在运行时检查来确定代码行为」这种 JavaScript 味很重的东西,在 typescript 风潮愈演愈烈的,react 野心越来越大的当下,是一件根本就不被考虑的妥协。
至于你上面提到的「卸载函数为什么是 effect 的返回值,而不是独立的一个参数」,这个实在是太丑了,更不可能考虑。
»
wanghaoipv6 创建的更多回复
关于
·
帮助文档
·
博客
·
API
·
FAQ
·
实用小工具
·
1240 人在线
最高记录 6679
·
Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms ·
UTC 18:05
·
PVG 02:05
·
LAX 10:05
·
JFK 13:05
Developed with
CodeLauncher
♥ Do have faith in what you're doing.