我试图运行npm run gulp
,我来了这个primordialis not defined错误(我还添加了npm-shrinkwrap.json文件,建议它得到更新后,运行npm安装,但它没有修复我的primordialis not define错误):
> 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
有什么建议吗🙌?
2条答案
按热度按时间pprl5pva1#
Primordial由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的早期版本,看看它是否能与该版本一起工作。
uoifb46i2#
问题是版本不匹配。我也有2个NodeJS安装路径,这是抛出的东西。
我把它们都卸载了,从头开始,用brew重新安装。
然后检查所有版本是否兼容。
我还必须安装node-sass,并参考此兼容性表以获得正确的版本-https://github.com/sass/node-sass#node-version-support-policy
现在它的工作,我可以继续开发:)截至今天,我运行节点v17.0.1 Npm v8.1.0 Gulp cli v2.3.0