ReferenceError: primordials is not defined


好久沒玩gulp了,最近有個項目需要用到這貨,npm install操作之后,查看任務:

gulp -T

居然報如下錯誤:

fs.js:45
} = primordials;
    ^

ReferenceError: primordials is not defined

ReferenceError: primordials is not defined 說primordials這家伙沒被定義,結果各種搜索后了解到說gulp版本和node版本不兼容,現在看下我本地的版本:

$ gulp --version

CLI version: 2.2.0
Local version: 3.9.1
$ node -v

v14.17.0

網上說是gulp 3.x版本和node 12.x版本不兼容,我這都14的版本了,應該是從12版本開始出現這個問題的。

解決方法

問題找到,那就更新gulp版本咯,最新的好像已經4.x了,但是這貨我又不經常用,更新了干嘛,當然還有另一種就是降低node版本,但時代在進步,你敢要要倒退?
所以找到了另一個解決方法,使用npm shrinkwrap鎖定依賴版本:

  1. 項目根目錄新建npm-shrinkwrap.json
  2. npm-shrinkwrap.json內容修改如下:
{
  "dependencies": {
    "graceful-fs": {
        "version": "4.2.2"
     }
  }
}

然后試着重新執行npm install,一路暢通,最后完美解決。

上面就是ReferenceError: primordials is not defined報錯的解決方法。

參考:https://timonweb.com/javascript/how-to-fix-referenceerror-primordials-is-not-defined-error/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM