我已经通过“npm install”安装了Node.js模块,然后尝试在命令提示符下执行gulp sass watch。之后,我得到了以下回应。
[18:18:32] Requiring external module babel-register
fs.js:27
const { Math, Object, Reflect } = primordials;
^
ReferenceError: primordials is not defined
我在大口大口看之前已经试过了:
npm -g install gulp-cli
简单优雅的解决方案
只需遵循以下步骤。它与多次运行的npm安装或安装任何其他模块,甚至将项目发布到artifactory,都能完美配合。
在package.json所在的目录中,创建一个npm-shrinkwrap.json文件,其中包含以下内容:
{
"dependencies": {
"graceful-fs": {
"version": "4.2.2"
}
}
}
运行npm install,不用担心,它会用一堆内容更新npm-shrinkwrap.json。让我们通过更新package.json脚本选项来消除这些更新。
"scripts": {
"preshrinkwrap": "git checkout -- npm-shrinkwrap.json",
"postshrinkwrap": "git checkout -- npm-shrinkwrap.json"
}
现在,您可以运行npm安装程序,您的npm-shrinkwrap.json将完好无损,并将永远工作。