type the received new must err_invalid_arg_type argument node.js ubuntu npm webpack

node.js - new - the "path" argument must be of type string. received type undefined



el comando webpack no funciona (7)

En realidad, recibí este error hace un tiempo. Hay dos maneras de hacer que esto funcione, según mi conocimiento.

  1. El servidor no actualizará los cambios realizados en index.js debido a algunos errores del paquete web. Entonces, reinicie su servidor.
  2. La actualización de su node.js será útil para evitar tales problemas.

Soy nuevo en Node Js y Webpack. Traté de comenzar un proyecto con cargadores de módulos.

En primer lugar, instalé nodeJs y NPM y creé un nuevo directorio llamado tutorial . Utilicé el símbolo del sistema para cd en este directorio y luego ejecuté el siguiente comando npm init y luego instalé webpack a través de npm usando el siguiente comando:

npm install -S webpack

El primer comando instaló webpack localmente en el proyecto bajo el directorio ''node-modules'' y puedo ejecutar mi proyecto haciendo esto:

nodejs node-modules/webpack/bin/webpack.js

El problema con esto es que tengo que colocar mi archivo webpack.config.js dentro de este directorio que quiero colocar en la raíz de mi proyecto.

Una solución a este problema fue instalar webpack globalmente en mi máquina, lo que hice con el siguiente comando:

npm install -g webpack

Esto instaló Webpack y ahora tengo un comando de Webpack. Sin embargo, este comando no parece funcionar ni hacer nada en absoluto. Cuando intento ejecutar esto desde el directorio raíz de mi proyecto, no hace nada en absoluto (Ver captura de pantalla)

Por favor dime que estoy haciendo mal !!


Instalar webpack con la opción -g instala webpack en una carpeta en

C: / Users / <. Profileusername.> / AppData / Roaming / npm / node_modules

lo mismo con webpack-cli y webpack-dev-server

Fuera de los node_modules globales, se crea un enlace para que el paquete web se ejecute desde la línea de comandos

C: / Users / <. Profileusername.> / AppData / Roaming / npm

para que esto funcione localmente, hice lo siguiente

  1. renombró la carpeta webpack en global node_modules a _old
  2. webpack instalado localmente dentro del proyecto
  3. edité el enlace de comando webpack.cmd y apunté a webpack.js para buscar en mi carpeta local node_modules dentro de mi aplicación

El problema con este enfoque es que tendría que mantener enlaces para cada proyecto que tenga. No hay otra manera, ya que está utilizando el editor de línea de comandos para ejecutar el comando webpack al instalar con una opción -g.

Entonces, si tenía proj1, proj2 y proj3 todos con sus node_modules locales y su paquete web local instalado (sin usar -g durante la instalación), entonces tendría que crear nombres de enlaces no genéricos en lugar de solo paquete web.

ejemplo aquí sería crear webpack_proj1.cmd, webpack_proj2.cmd y webpack_proj3.cmd y en cada cmd siga los puntos 2 y 3 anteriores

PD: no olvide actualizar su package.json con estos cambios o de lo contrario obtendrá errores ya que no encontrará el comando webpack


La forma más rápida, solo para que esto funcione, es usar el paquete web desde otra ubicación, esto evitará que tenga que instalarlo globalmente o si npm run webpack falla.

Cuando instala el paquete web con npm, va dentro de la carpeta " node_modules/.bin " de su proyecto.

en el símbolo del sistema (como administrador)

  1. vaya a la ubicación del proyecto donde se encuentra su webpack.config.js.
  2. en el símbolo del sistema, escriba lo siguiente

"C:/Users/../ProjectName/node_modules/.bin/webpack" --config webpack.config.vendor.js


Puede ejecutar npx webpack . El comando npx, que se entrega con el Nodo 8.2 / npm 5.2.0 o superior, ejecuta el binario webpack (./node_modules/.bin/webpack) del paquete webpack. Fuente de información: https://webpack.js.org/guides/getting-started/


Tuve que reinstalar webpack para que funcione con mi versión local de webpack, por ejemplo:

$ npm uninstall webpack $ npm i -D webpack


webpack no solo está en su directorio node-modules/webpack/bin/ , también está vinculado en node_modules/.bin .

Tiene el comando npm bin para obtener la carpeta donde npm instalará los ejecutables.

Puede usar la propiedad de scripts de su package.json para usar el paquete web de este directorio que se exportará.

"scripts": { "scriptName": "webpack --config etc..." }

Por ejemplo:

"scripts": { "build": "webpack --config webpack.config.js" }

Luego puede ejecutarlo con:

npm run build

O incluso con argumentos:

npm run build -- <args>

Esto le permite tener webpack.config.js en la carpeta raíz de su proyecto sin tener webpack instalado globalmente o tener su configuración de webpack en la carpeta node_modules .


npm i webpack -g

instala webpack globalmente en su sistema, lo que lo hace disponible en la ventana de terminal.