Laravel 混合:更新 Node.js 依赖项
Laravel Mix: Update a Node.js dependency
我正在尝试使用 Laravel Mix 编译 webpack 配置文件。
在 Laracasts Vue 2 系列的 webpack 插曲之后,
// 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();
当我 运行 $ npm 运行 dev 时,我得到一个错误:
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
问题似乎是更新 Node.js 依赖项:https://github.com/JeffreyWay/laravel-mix/issues/264
如何更新 Node.js 依赖项?
我正在尝试:
$ 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
我也运行安装了$brew install node,但是报错:
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'
强制 link 并覆盖所有冲突文件:
brew link --overwrite node
列出所有将被删除的文件:
brew link --overwrite --dry-run node
我从 nodejs.org 重新安装了 Node.js,重写了旧文件。
然而,这实际上将 npm 从 4.4.5 降级到 4.1.2...Node.js 是 2.15.5,现在是 7.5.0。
我还必须安装一些模块:$ npm install autoprefixer
$ npm run dev // works now
我正在使用 Windows 10
您可以为节点下载 NVM,它代表节点版本管理器
设置完成后,将此输入到您的 cmd
nvm version
nvm install node {version of node you want}
nvm use {version of node}
希望这对你有用
因为它对我有用
您可以删除 laravel 项目中的节点模块文件夹。
之后 运行 :
npm install - g npm
此命令将使用升级的节点文件重新安装节点模块文件夹。
接下来,你可以试试 运行
npm run dev
你也可以运行
npm update
更新您的节点
希望这个回答对您有所帮助
我正在尝试使用 Laravel Mix 编译 webpack 配置文件。
在 Laracasts Vue 2 系列的 webpack 插曲之后,
// 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();
当我 运行 $ npm 运行 dev 时,我得到一个错误:
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
问题似乎是更新 Node.js 依赖项:https://github.com/JeffreyWay/laravel-mix/issues/264
如何更新 Node.js 依赖项?
我正在尝试:
$ 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
我也运行安装了$brew install node,但是报错:
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'
强制 link 并覆盖所有冲突文件:
brew link --overwrite node
列出所有将被删除的文件:
brew link --overwrite --dry-run node
我从 nodejs.org 重新安装了 Node.js,重写了旧文件。
然而,这实际上将 npm 从 4.4.5 降级到 4.1.2...Node.js 是 2.15.5,现在是 7.5.0。
我还必须安装一些模块:$ npm install autoprefixer
$ npm run dev // works now
我正在使用 Windows 10 您可以为节点下载 NVM,它代表节点版本管理器 设置完成后,将此输入到您的 cmd
nvm version
nvm install node {version of node you want}
nvm use {version of node}
希望这对你有用 因为它对我有用
您可以删除 laravel 项目中的节点模块文件夹。
之后 运行 :
npm install - g npm
此命令将使用升级的节点文件重新安装节点模块文件夹。 接下来,你可以试试 运行
npm run dev
你也可以运行
npm update
更新您的节点
希望这个回答对您有所帮助