krislee94 / docs

日常文档整理
1 stars 0 forks source link

Hook规则 #20

Open krislee94 opened 4 years ago

krislee94 commented 4 years ago

Hook本质就是JavaScript函数,但是在使用它时需要遵循两条规则。可以使用插件linter来强制执行这些规则。

只在最顶层使用Hook

只在React函数中调用Hook

遵守此规则,确保组件的状态逻辑在代码中清晰可见。

ESLint插件

npm install eslint-plugin-react-hooks --save-dev
// 你的 ESLint 配置
{
  "plugins": [
    // ...
    "react-hooks"
  ],
  "rules": {
    // ...
    "react-hooks/rules-of-hooks": "error", // 检查 Hook 的规则
    "react-hooks/exhaustive-deps": "warn" // 检查 effect 的依赖
  }
}