执行Gulp时提示找不到‘laravel-elixir’模块,求助解决方案
解决Gulp提示“cannot find module 'laravel-elixir'”的问题
我来帮你排查这个问题,这种模块找不到的情况大多是依赖安装不完整、路径不对或者版本兼容的问题,试试下面这些步骤:
检查并安装本地依赖
首先确认你的项目根目录下有没有package.json文件,打开它看看里面的devDependencies里有没有laravel-elixir。如果没有,在项目根目录的cmd里运行:npm install laravel-elixir --save-dev这个命令会把laravel-elixir安装到项目本地的开发依赖里,而不是全局,这才是Gulp项目推荐的依赖管理方式。
清理缓存并重新安装所有依赖
有时候npm缓存会导致安装异常,试试彻底清理后重装:- 先删除项目根目录下的
node_modules文件夹和package-lock.json文件(如果有的话) - 运行命令清理npm缓存:
npm cache clean --force - 重新安装所有依赖:
npm install
- 先删除项目根目录下的
用本地Gulp运行任务
不要直接用全局的gulp命令,而是用npx调用项目本地安装的Gulp,这样它能正确找到项目里的依赖:npx gulp检查Laravel版本与elixir的兼容性
如果你的Laravel版本是5.4及以上,注意官方已经把laravel-elixir替换成了laravel-mix,这时候你应该安装mix而不是elixir:- 先卸载旧的elixir(如果已经安装):
npm uninstall laravel-elixir --save-dev - 安装laravel-mix:
npm install laravel-mix --save-dev
然后修改你的
gulpfile.js,把elixir的调用换成mix的语法,比如原来的elixir(function(mix) { ... })改成mix.js('resources/js/app.js', 'public/js')这类mix的写法。- 先卸载旧的elixir(如果已经安装):
内容的提问来源于stack exchange,提问作者Alexandra Zwick
相关产品推荐
相关产品推荐

