React 的 API 调用放在生命周期的哪个部分最好?

2019-04-24 09:33:16 +08:00
 triplecheese

在读的一本叫《 The Road to learn React 》的书里面,API 调用是放在 render 之后的 componentDidMount 里的,但是刚才在油管上看的一个视频里面是放在 render 之前的 componentWillMount 里的,两种方法好像都能完成调用,这只是习惯问题,还是存在孰好孰坏之分?

3062 次点击
所在节点    前端开发
13 条回复
fengbjhqs
2019-04-24 09:49:22 +08:00
componentWillMount 17 版以后可能就没有了,
paullee
2019-04-24 09:52:38 +08:00
triplecheese
2019-04-24 10:03:59 +08:00
@fengbjhqs 好像是的,看来还是用 componentDidMount 比较好一点
triplecheese
2019-04-24 10:04:13 +08:00
@paullee 了解了,谢谢
Sapp
2019-04-24 10:05:36 +08:00
componentWillMount 不适合做异步

不过现在不都是 hooks 了吗?
triplecheese
2019-04-24 10:10:05 +08:00
@Sapp 还没学到 Hooks🤣
Sapp
2019-04-24 10:11:23 +08:00
@triplecheese 如果不是为了面试,其实那些 api 不学也行了...
ChefIsAwesome
2019-04-24 10:11:52 +08:00
你把 willmount 当作 constructor 就行了。
triplecheese
2019-04-24 10:30:00 +08:00
@ChefIsAwesome 嗯嗯,有道理
zqx
2019-04-24 10:36:14 +08:00
构造函数和 didmount 的执行时间可能也就差几微秒,这两个都可以吧?
duzhihao
2019-04-24 12:34:57 +08:00
我记得官方文档建议放在 componentDidMount 里面
CocaColf
2019-04-24 13:26:51 +08:00
componentDidMount 里面
MichaelJack
2019-04-24 15:04:38 +08:00
componentWillMount 已弃用 现在只能在 componentDidMount

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

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

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

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

© 2021 V2EX