React deploy error =断言`args [1] - > IsString()'

时间:2018-05-18 20:49:44

标签: node.js reactjs

我正在尝试部署React应用程序。它工作正常,所有测试都通过。但它被CI所困。

这是错误:

Deploying application
node[5878]: ../src/node_contextify.cc:628:static void node::contextify::ContextifyScript::New(const v8::FunctionCallbackInfo<v8::Value>&): Assertion `args[1]->IsString()' failed.
 1: node::Abort() [node]
 2: 0x876c55 [node]
 3: node::contextify::ContextifyScript::New(v8::FunctionCallbackInfo<v8::Value> const&) [node]
 4: v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo*) [node]
 5: 0xacd2df [node]
 6: v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*) [node]
 7: 0xf05d4b8427d
Script failed with status 
failed to deploy

我认为它与Node版本有关...但我不太确定。救命啊!

这似乎是在同一个问题上,但说实话,我并没有从中得到任何答案:https://github.com/nodejs/node/issues/20285

1 个答案:

答案 0 :(得分:3)

基于Github线程,我假设您在开发工作流程中使用Gulp.js,因此基于它;

节点10已将其contextify脚本更改为更严格,因此使用它的现有Gulp 3.9.x版本也会导致错误导致其断言失败。

所以解决方法就是

1)安装Gulp 4并升级你的gulpfile.js 有关更改的更多信息,请参阅UPGRADING YOUR GULP FOR RUNNING WITH NODE 10

上的这篇文章

或者只是

2)将node.js版本降级为LTS 8.x,直到Gulp 4作为默认的npm包发布。