Recibo el siguiente error, intento importar ThemeToggler desde gatsby-plugin-dark-mode
module "C:/Users/Karim Elnemr/Desktop/my-gatsby-website/node_modules/gatsby-plugin-dark-mode/index" Could not find a declaration file for module 'gatsby-plugin-dark-mode'. 'C:/Users/Karim Elnemr/Desktop/my-gatsby-website/node_modules/gatsby-plugin-dark-mode/index.js' implicitly has an 'any' type. Try `npm i --save-dev @types/gatsby-plugin-dark-mode` if it exists or add a new declaration (.d.ts) file containing `declare module 'gatsby-plugin-dark-mode';`ts(7016)También recibo estos errores en la terminal para siempre. Intento instalar el blugin.
npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: gatsby-starter-hello-world@0.1.0 npm ERR! Found: react@17.0.2 npm ERR! node_modules/react npm ERR! react@"^17.0.1" from the root project npm ERR! npm ERR! Could not resolve dependency: npm ERR! peer react@"16.x" from gatsby-plugin-dark-mode@1.1.2 npm ERR! node_modules/gatsby-plugin-dark-mode npm ERR! gatsby-plugin-dark-mode@"^1.1.2" from the root project npm ERR! npm ERR! Fix the upstream dependency conflict, or retry npm ERR! this command with --force, or --legacy-peer-deps npm ERR! to accept an incorrect (and potentially broken) dependency resolution. npm ERR!abajo es donde importé dicho complemento
import React from "react" import { ThemeToggler } from "gatsby-plugin-dark-mode" export default function ThemeToggle() { return ( <ThemeToggler> {({ theme, toggleTheme }) => { if (theme == null) { return null } return ( <label className="theme-switch"> <input type="checkbox" onChange={e => toggleTheme(e.target.checked ? "dark" : "light")} checked={theme === "dark"} /> <span className="toggle"></span> </label> ) }} </ThemeToggler> ) }Necesito alguna explicación de qué dosis significa y por qué está sucediendo para poder resolverlo.
Simplemente puede hacer: npm i gatsby-plugin-dark-mode --force
El error en la instalación significa que la biblioteca que desea instalar depende de React 16 mientras tiene React 17 instalado en su proyecto.
puede usar este comando npm i gatsby-plugin-dark-mode --legacy-peer-deps
Debe degradar sus versiones de reacción: en su paquete.json
"dependencies": { ... "react": "16.14.0", "react-dom": "16.14.0", ... }Luego elimine su carpeta de módulos de nodo y ejecute
yarn install or npm install