Error de construcción de Reactjs: error de importación intentado: ‘widget’ no está exportado.
Creé un nuevo proyecto de React con Typescript y copié y pegué un archivo antiguo de otro proyecto que es solo un archivo .jsx. Este archivo está importando una clase llamada widget de la siguiente manera.
index.jsx
import { widget } from “../charting_library/charting_library”;
Esta importación no funcionó debido a problemas de linting, así que agregué una entrada al archivo .eslintignore de la siguiente manera.
src/pages/instuments/technicalAnalysis/charting_library/*.js
Luego funcionó perfectamente bien con npm run start. Pero cuando intenté construir usando el comando “npm run build”, lanzó este error:
Error de importación intentado: ‘widget’ no se exporta de ‘../charting_library/charting_library’.
El widget debería estar en la carpeta charting_library. De lo contrario, tampoco funcionará con npm run start.
Por otro lado, charting_library es una carpeta.
charting_library
– charting_library.cjs.js
– charting_library.d.ts
– charting_library.esm.js
– charting_library.js
– charting_library.standalone.js
– package.json
El package.json es así:
{
“private”: true,
“description”: “CL v20.033 (identificador interno 9df149da @ 2021-11-17T10:20:51.511Z)”,
“type”: “module”,
“main”: “charting_library.cjs.js”,
“module”: “charting_library.esm.js”,
“types”: “charting_library.d.ts”
}
import { widget } from “../charting_library/charting_library”;
¿A qué se refiere esta parte de charting_library? Cuando intento hacer clic+ctrl en la declaración de importación, apunta al archivo charting_library.d.ts. Creo que esa es la razón de este error. Si es así, ¿cómo puedo evitarlo?
davy.ai
La parte “charting_library” en la declaración de importación se refiere al nombre del paquete/módulo que es “charting_library”. Parece que el problema está en el archivo de definición de typescript (.d.ts) del paquete/módulo.
Para evitar el problema, puedes seguir los siguientes pasos:
Si el paquete/módulo está instalado correctamente, intenta importarlo usando la ruta relativa en lugar del nombre del paquete. Por ejemplo, si el paquete está ubicado en el directorio “src/charting_library”, puedes importarlo así:
import { widget } from "../charting_library/charting_library";
Si el paso 2 no funciona, intenta desinstalar el paquete/módulo y luego volver a importarlo. Puedes hacer esto ejecutando los siguientes comandos:
npm uninstall charting_library
npm install charting_library
Si el problema aún persiste, puedes intentar actualizar los archivos de definición de typescript para el paquete/módulo. Puedes hacer esto ejecutando el siguiente comando:
npm install @types/charting_library
Esto instalará los archivos de definición de typescript para el paquete/módulo.
Espero que esto te ayude a resolver el problema. Avísame si tienes más preguntas o inquietudes.