Estoy tratando de usar useEffect en mi componente React pero encuentro un problema con el siguiente error:
TypeError: react_1.useEffect no es una función
y
No capturado (en promesa) TypeError: react_1.useState no es una función
He importado las bibliotecas así.
import React, { useEffect } from 'react'y tener el efecto de uso como este:
useEffect(() => { console.log("This is cool") }, [intentButton])La versión de reacción es 16.7.0
esto se debe a que el react V16.7 no tiene ganchos
La resolución es rebajar a
npm i react@next react-dom@nextque a partir del 2018/12/20 es 16.7.0-alpha.2:
yarn add react@next react-dom@nextluego pierde el renderizador de prueba:
import React from 'react' import ReactDOM from 'react-dom' import App from './App' it('renders without crashing', () => { const div = document.createElement('div') ReactDOM.render(<App />, div) ReactDOM.unmountComponentAtNode(div) }) Esto es lo que debería ser package.json :
"react": "^16.7.0-alpha.2", "react-dom": "^16.7.0-alpha.2",