学无先后,达者为师

网站首页 编程语言 正文

gulp构建时报错 ReferenceError: primordials is not defined

作者:婷婷心慌 更新时间: 2022-01-07 编程语言

执行npm run build时提示以下错误:ReferenceError: primordials is not defined
在这里插入图片描述
问题的原因:是安装gulp版本与node版本不兼容的问题

解决办法:

方法1

降低node版本到 node@10, 升级gulp@4
操作步骤:
1.先查看node 版本号 node -v

2.查看当前文件夹下的 gulp 版本号gulp -v

3.如果发现node版本号 过高,比如,我之前的node升级到了最新,node@14,回退node版本到 node@11

先安装npm版本控制器npm install -g n
切换版本sudo n v11.15.0
安装node npm i -g node
查看node版本 node -v

4.查看node 是否回退成功,如果没问题,删除当前文件夹的node_modules文件夹,重新安装依赖 npm install

5.安装成功后确认 gulp 版本为4

6.开启gulp,就可以正常启用了

或者还可以这样(推荐以下方法

方法2

如果你的项目不需要经常npm install
可以在package.json文件的同级目录下新建一个npm-shrinkwrap.json文件
在这里插入图片描述
输入以下内容:

{
  "dependencies": {
    "graceful-fs": {
      "version": "4.2.3"
    }
  }
}

注意这个文件在执行过一次npm install以后,下次再执行就没有效果了

方法3

在你的package.json文件里加入以下代码:

{
  // Your current package.json
  "scripts": {
    // Your current package.json scripts
    "preinstall": "npx npm-force-resolutions"
  },
  "resolutions": {
    "graceful-fs": "4.2.3"
  }
}

npm-force-resolutions会更改package-lock.json文件来设置graceful-fs到你想要的版本。
这个方法每次执行npm install都会生效

原文链接:https://blog.csdn.net/qq_42780155/article/details/119827124

栏目分类
最近更新