问题描述
让我们创建一个非常简单的钩子 useDouble
返回一个数字的双精度:
导出默认函数 useDouble(nb) {返回 nb * 2;}
文档(https://reactjs.org/docs/hooks-custom.html#extracting-a-custom-hook) 内容如下:
自定义 Hook 是一个 JavaScript 函数,其名称以use"开头,并且可以调用其他 Hook
但是如果我将 useDouble
更改为 double
,它仍然有效.我什至尝试从 double
钩子调用其他钩子,它仍然有效.
演示:https://codesandbox.io/s/laughing-gareth-usb8g?file=/src/components/WithUseDouble.js
所以我的问题是:命名钩子 useXxxxx
只是一种约定,还是它真的能以某种方式破坏某些东西?如果可以,你能举个例子吗?
谢谢
来自 reactjs/docs.>
并且在使用多个功能的大型组件中,使用"通常用于前缀还有助于轻松识别函数是否为自定义钩子.
Lets' create a very simple hook useDouble
that returns the double of a number:
export default function useDouble(nb) {
return nb * 2;
}
The documentation (https://reactjs.org/docs/hooks-custom.html#extracting-a-custom-hook) reads:
But if I change useDouble
to double
, it still works. I even tried to call other hooks from the double
hook, and it still works.
Demo: https://codesandbox.io/s/laughing-gareth-usb8g?file=/src/components/WithUseDouble.js
So my question is: is naming hooks useXxxxx
just a convention, or can it really break something somehow? And if it can, could you show an example?
Thanks
From reactjs/docs.
And in large components that use several functions, the "use" prefix also helps in easily identifying if a function is a custom hook.
这篇关于React 钩子真的必须从“使用"开始吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!