【问题标题】:How to use new Feature Hooks in React?如何在 React 中使用新的功能挂钩?
【发布时间】:2018-10-26 12:58:30
【问题描述】:

我刚刚读到了 react 的新功能钩子。Read about hooks 但我无法使用它。 它给了我错误。

我目前使用的是 16.6.0 版

我终于明白了钩子。

import React, {useState} from 'react';

const Fun = () => {
    const [count, setCount] = useState(0);

    return (
        <div>
        <p>You clicked {count} times</p>
        <button onClick={() => setCount(count + 1)}>
          Click me
        </button>
      </div>
    );}

 export default Fun;

我作为 Fun 导入并在我的 app.js 文件中使用

我犯的错误是我没有安装 React v16.7.0-alpha 所以我使用 npm add react@next react-dom@next 安装。

谢谢

【问题讨论】:

  • 据我所知,React Hooks 已移至 16.7.0-alpha.2。

标签: javascript reactjs react-hooks


【解决方案1】:

编辑:

Hooks 作为 16.8.0 版本的一部分发布,您可以通过安装 React 和 React-dom 16.8.0 来使用它

运行

yarn install react@16.8.0 react-dom@16.8.0

安装。为了升级反应到最新版本

yarn upgrade react react-dom

挂钩在 16.6.0 版中不存在,但在 16.7.0 版中是一个提议。但是,您可以使用 16.7.0-alpha.0 alpha 版本的 React 来测试它们

为了使用这个安装上面的版本使用

yarn add react@next react-dom@next

确保同时安装reactreact-dom,否则会收到类似

的警告

TypeError: Object(…) is not a function” 尝试使用 react 时出错 钩子(阿尔法)

【讨论】:

  • 但我得到错误 Hooks can only be called inside a function component.这个怎么用?
  • @Ram,我建议您创建一个包含有关您的错误的具体细节的问题,并提供相关代码
  • 添加react-dom 对我来说是关键。 reactjs.org/docs/hooks-overview.html 的反应文档没有提到这一点。非常令人沮丧。
  • @Farid 您需要始终使用相同版本的 react 和 react-dom。
  • 我得到了与上面相同的 TypeError,但是,我的依赖项具有正确的 Alpha 版本。有没有人经历过这个?我有一个不同的项目可以毫无问题地使用它们,我正在尝试以相同的方式进行配置,但是一旦我尝试使用新的 API,就无法克服这个错误。
猜你喜欢
  • 1970-01-01
  • 2023-01-25
  • 2020-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多