Laravel Mix: Update a Node.js dependency

Dazzle picture Dazzle · Feb 6, 2017 · Viewed 13.7k times · Source

I am trying to compile webpack configuration files with Laravel Mix.

Following webpack episode on Laracasts Vue 2 series,

// Scripts

  "scripts": {
    "dev": "node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
....

// mix
mix.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css')
.version();

When I run $ npm run dev, I get an error:

npm ERR! Exit status 1

npm ERR! Failed at the @ dev script 'node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js'.

// Running

npm ERR! node v4.4.5
npm ERR! npm v2.15.5

// The error points to
let extractPlugin = new plugins.ExtractTextPlugin(
/Users/User/Code/project/node_modules/laravel-mix/setup/webpack.config.js:126

The issue seems to be update a Node.js dependency: https://github.com/JeffreyWay/laravel-mix/issues/264

How do I update the Node.js dependency?

I am trying:

$ brew upgrade node : Error = node not installed
$ node -v = 2.15.5
$ npm -v = 4.4.5
$ brew install node // installs but throws error

Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/node
Target /usr/local/bin/node
already exists. You may want to remove it:
  rm '/usr/local/bin/node'

To force the link and overwrite all conflicting files:
  brew link --overwrite node

To list all files that would be deleted:
  brew link --overwrite --dry-run node

Possible conflicting files are:
/usr/local/bin/node
...

**$ brew upgrade node // says node 7.5.0 already installed**
$ npm run dev // same error
$ node -v = 4.4.5

I also ran $ brew install node which installed, but I got an error:

Error: The brew link step did not complete successfully.
The formula built, but is not symlinked into /usr/local.
Could not symlink bin/node.
Target /usr/local/bin/node
already exists. You may want to remove it:
rm '/usr/local/bin/node'

To force the link and overwrite all conflicting files:

brew link --overwrite node

To list all files that would be deleted:

brew link --overwrite --dry-run node

Answer

abdelhak51 picture abdelhak51 · Jul 9, 2020

you can delete your node modules folder in your laravel project.

after that run :

npm install - g npm

this command will reinstall the node modules folder with upgrading node files. next, you can try and run

npm run dev

and you can also run

npm update

to update your node

hope this answer will help