自定义 Hooks 更像是一种约定而非功能。 如果函数的名称以 “use” 开头并且它调用其他 Hook ,我们就可以说它是一个自定义 Hook 。 useSomething 命名约定可以帮助我们的 linter 插件在使用钩子代码中找到 bug 。