如何从生产版本中排除挂钩

时间:2020-12-18 17:50:29

标签: javascript reactjs react-hooks

我创建了一个打印一些调试信息的钩子,然后调用一些 Reacts 钩子。我想从生产版本中自动排除它。如果我尝试使用这样的 if 语句来执行此操作:

if (process.env.NODE_ENV === 'development') {
        useMyHook(...)
}

我收到错误 React Hook "useMyHook" is called conditionally. React Hooks must be called in the exact same order in every component render。在这种情况下,钩子仍然会按顺序调用。

如何在生产版本中排除挂钩?

1 个答案:

答案 0 :(得分:2)

您可以使用 useMyHook 条件将逻辑包装在 if (process.env.NODE_ENV === 'development') 内。

您可以查看 React 文档中的 Rules of Hooks 以获得简洁的解释。