nodejs v10.3.0的gulp任务问题:src \node_contextify.cc:629:断言`args [1] - > IsString()'失败

M14*_*M14 33 javascript node.js node-modules gulp

我最近将我的nodejs版本更新为10.30.0.一切正常.但我的gulp构建任务不起作用,在旧版本(9.X)上工作正常.这就是我得到的.

 gulp[11376]: src\node_contextify.cc:629: Assertion `args[1]->IsString()' failed.
 1: node::DecodeWrite
 2: node::DecodeWrite
 3: uv_loop_fork
 4: v8::internal::interpreter::BytecodeDecoder::Decode
 5: v8::internal::RegExpImpl::Exec
 6: v8::internal::RegExpImpl::Exec
 7: v8::internal::RegExpImpl::Exec
 8: 00000384E1284281
Run Code Online (Sandbox Code Playgroud)

有人,请帮帮我.

nos*_*sus 109

只需运行命令

npm install natives
Run Code Online (Sandbox Code Playgroud)

  • 运行`npm natives`也适用于节点10.6.0 (3认同)
  • +需要`npm install` +`npm audit fix`才能使gulp重新工作。 (3认同)
  • 您可能需要执行额外的```npm cache clean --force```然后````npm install```然后````npm install natives```.这就是我的情况. (3认同)
  • 请记住,这远非理想的解决方案。在NPM页面上阅读有关使用此软件包的警告:https://www.npmjs.com/package/natives真正的解决方案可能是升级到当前版本的Node和node-sass。 (2认同)
  • 它对我有用......非常感谢你。浪费了 2 个多小时,最后,只需一个命令就解决了问题。 (2认同)

jas*_*rty 10

我有两个不同的解决方案在两个不同的工作区中工作.更新到节点10.6.0后的第一个要求我使用此方法:

$rm -rf node_modules
$rm -rf package-lock.json
$npm cache clean
$npm install
Run Code Online (Sandbox Code Playgroud)

第二个工作区不能用于上面的工作,虽然我先尝试过,它要求我重新安装所有gulp依赖项然后运行npm audit fix.例如:

$npm install --dev gulp gulp-sass gulp-autoprefixer
$npm audit fix
Run Code Online (Sandbox Code Playgroud)

希望这有助于某人.

  • 对于更高版本的节点,您必须使用$ npm cache clean --force删除缓存,或者在Windows上,删除C:\ user \ AppData \ Roaming \ npm-cache文件夹。这为我解决了问题 (3认同)
  • `npm install natives`并没有立即解决我的问题,但是感谢@dwilli手动删除文件夹并按照此解决方案的建议为我工作 (2认同)

小智 5

节点版本兼容问题,尝试使用节点版本<=9.11.2。