npm run gulp primordials 未定义
Posted
技术标签:
【中文标题】npm run gulp primordials 未定义【英文标题】:npm run gulp primordials not defined 【发布时间】:2021-12-16 09:04:54 【问题描述】:我正在尝试运行 npm run gulp
并且我想出了这个 primordials is not defined 错误(我还按照建议添加了 npm-shrinkwrap.json 文件,该文件在运行 npm install 后得到更新,但它没有' t fix my primordials is not defined 错误):
> gulp-tutorial@1.0.0 gulp
> gulp
fs.js:47
= primordials;
^
ReferenceError: primordials is not defined
at fs.js:47:5
at req_ (/Applications/MAMP/htdocs/wordpress/wp-content/themes/theming-main/node_modules/natives/index.js:143:24)
at Object.req [as require] (/Applications/MAMP/htdocs/wordpress/wp-content/themes/theming-main/node_modules/natives/index.js:55:10)
at Object.<anonymous> (/Applications/MAMP/htdocs/wordpress/wp-content/themes/theming-main/node_modules/vinyl-fs/node_modules/graceful-fs/fs.js:1:37)
at Module._compile (node:internal/modules/cjs/loader:1095:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1147:10)
at Module.load (node:internal/modules/cjs/loader:975:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Module.require (node:internal/modules/cjs/loader:999:19)
at require (node:internal/modules/cjs/helpers:102:18)
Node.js v17.0.1
有什么建议吗??? ?
【问题讨论】:
【参考方案1】:原始元素由 Node.js 内部模块使用,最终用户脚本无法访问。 (这就是他们存在的全部意义。否则,您可能会修改 Object.prototype
并最终影响 Node.js 内部,从而导致奇怪的崩溃之类的事情。)
出现此错误的模块是natives
模块。 page for the package 说:
此模块依赖于 Node.js 的内部结构,并且会在某些时候中断。不要用,更新到graceful-fs@4.x。
听起来好像它已经坏了。使用npm ls natives
找出它在使用什么。 (运行该命令时,您可能需要位于 /Applications/MAMP/htdocs/wordpress/wp-content/themes/theming-main
目录中。)从那里,您可以尝试找出如何摆脱它。
另一种可能性是尝试降级到 Node.js 的早期版本,看看它是否适用于该版本。
【讨论】:
感谢您的帮助,对我来说这是版本不匹配的问题。我也有 2 个 NodeJS 安装路径,这让事情变得很糟糕。所以我将它们全部卸载,从头开始并使用 brew 重新安装。然后检查版本是否都兼容。现在它可以工作了,我可以继续开发了:)截至今天,我正在运行 Node v17.0.1 Npm v8.1.0 Gulp cli v2.3.0【参考方案2】:问题在于版本不匹配。我也有 2 个 NodeJS 安装路径,这很糟糕。
我把它们都卸载了,从头开始用brew重新安装。
然后检查版本是否都兼容。
我还必须安装 node-sass 并参考此兼容性表以获得正确的版本 - https://github.com/sass/node-sass#node-version-support-policy
现在它可以工作了,我可以继续开发 :) 截至今天,我正在运行 Node v17.0.1 Npm v8.1.0 Gulp cli v2.3.0
【讨论】:
以上是关于npm run gulp primordials 未定义的主要内容,如果未能解决你的问题,请参考以下文章
人人开源打包部署,gulp 报错:ReferenceError: primordials is not defined
如何使用来自 VSCode 的 npm run 脚本进行调试?
ReferenceError: primordials is not defined 安装语义 UI 时出现错误
Visual Studio Task Runner Explorer - ReferenceError: primordials is not defined