所以自定义 hook 可以当函数组件来用嘛··

2022-11-26 14:22:12 +08:00
 cutemurphy2888

函数组件也可以调 hook 也可以调自定义 hook 自定义 hook 也可以调其他 Hook 也可以调内置的 hook

自定义 hook 也引入一些 ui components`

2064 次点击
所在节点    React
8 条回复
shakukansp
2022-11-26 14:54:55 +08:00
react 不是讲究一个 ui 也是在写 js ?
那你为什么要把 js 和组件分开讨论
cutemurphy2888
2022-11-26 15:03:52 +08:00
@shakukansp 自定义 hook 本身就强调 共享逻辑 没有说要共享 ui 或者 共享带逻辑的 ui`

本来就是分开的。
shenyu1996
2022-11-26 22:07:40 +08:00
理论上可以 是不是组件,取决于使用的时候是直接执行函数,还是使用 jsx 的方式(也就是作为 createElement 的参数)
bojackhorseman
2022-11-26 22:31:59 +08:00
自定义 hook 可以返回组件
ragnaroks
2022-11-27 00:56:03 +08:00
可以,但是最好不要这样,hook 应当是纯逻辑,如果有外部依赖( DOM 、或者你所谓的组件)应当以参数的形式提供
ragnaroks
2022-11-27 00:57:16 +08:00
const render = useErrorCheck(request,ErrorElement,SuccessElement);

return <div>{render()}</div>;
cutemurphy2888
2022-11-27 11:17:49 +08:00
@ragnaroks 自定义 hook 自己引入 ui component 不行?
ragnaroks
2022-11-27 14:28:35 +08:00
@cutemurphy2888 上面已经做出解答“可以,但是最好不要这样,hook 应当是纯逻辑”,如果你就是想与 react
最佳实践对抗(比如我自己用 dotnet 就是想与 MSS 对抗)那也完全用你自己的方式。但是绝大多数人都是按照官方的方式使用,你这样不能与他人协作,如果是你自己一个人的练手项目你想怎么写都可以。

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

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

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

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

© 2021 V2EX