deno.com

react-rules-of-hooks

注意: 此规则包含在以下规则集中:reactfresh
deno.json 中启用完整集合:
{
  "lint": {
    "rules": {
      "tags": ["react"] // ...or "fresh"
    }
  }
}
使用 Deno CLI 启用完整集合:
deno lint --rules-tags=react
# or ...
deno lint --rules-tags=fresh

确保在 React/Preact 组件中正确调用 hooks。它们必须在组件的顶层调用,而不是在条件语句或循环内部。

无效示例:

// 错误:在条件内部调用
function MyComponent() {
  if (condition) {
    const [count, setCount] = useState(0);
  }
}

// 错误:在 for 循环内部调用
function MyComponent() {
  for (const item of items) {
    const [count, setCount] = useState(0);
  }
}

// 错误:在 while 循环内部调用
function MyComponent() {
  while (condition) {
    const [count, setCount] = useState(0);
  }
}

// 错误:在条件之后调用
function MyComponent() {
  if (condition) {
    // ...
  }

  const [count, setCount] = useState(0);
}

有效示例:

function MyComponent() {
  const [count, setCount] = useState(0);
}

你找到需要的内容了吗?

隐私政策