es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

lit-element con rollup y redux: el proceso no está definido

Estoy tratando de cambiar la gestión de estado en mi aplicación basada en lit-element de variables globales simples a redux.
Siguiendo los tutoriales de redux, instalé la herramienta redux toolkit y creé un reductor y una tienda simples.

La compilación de la aplicación con rollup tiene éxito, pero cuando cargo la aplicación en Chrome, obtengo el siguiente error:

ReferenceError: process no está definido

Hay varias líneas en el código de redux que utilizan ‘process’, por ejemplo:

/*
* Esta es una función simulada para verificar si el nombre de la función ha sido alterado por la minificación.
* Si la función ha sido minificada y NODE_ENV !== ‘production’, advierte al usuario.
*/

function isCrushed() {}
/
if (process.env.NODE_ENV !== ‘production’ && typeof isCrushed.name === ‘string’ && isCrushed.name !== ‘isCrushed’) {
warning(‘Actualmente estás utilizando código minificado fuera de NODE_ENV === “production”. ‘ + ‘Esto significa que estás ejecutando una versión de desarrollo más lenta de Redux. ‘ + ‘Puedes usar loose-envify (https://github.com/zertosh/loose-envify) para browserify ‘ + ‘o configurar el modo a producción en webpack (https://webpack.js.org/concepts/mode/) ‘ + ‘para asegurarte de tener el código correcto para tu compilación de producción.’);

}

¿Alguien puede ayudar? ¿Me estoy perdiendo algo? ¿Es ‘process’ algo que solo está disponible en Node?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, ‘process’ es una variable global de Node.js y no está disponible en entornos de navegadores como Chrome. La referencia a process.env.NODE_ENV se utiliza para lógica condicional en el código de Redux para mostrar advertencias en modo desarrollo. Para usar Redux en un entorno de navegador, puedes agregar un polyfill para process como ‘process/browser’ o utilizar una solución alternativa como DefinePlugin de webpack para establecer ‘process.env.NODE_ENV’ en ‘production’ al compilar para producción.

Comments are closed.