错误:'NewSymbol'不是'v8 :: String'的成员?

时间:2014-05-05 17:57:23

标签: javascript node.js v8

自从NodeJS升级到0.11.13后,它集成了V8引擎3.24.35.22我在某些C ++模块上出现了这个错误:

error: ‘NewSymbol’ is not a member of ‘v8::String’

那么我该怎么办而不是NewSymbol?

谢谢

3 个答案:

答案 0 :(得分:4)

V8做了一些改变。我同意你需要使用NaN来实现更好的V8演变。这是一个很好的宏框架。

v8::String::New("test")已转换为NanSymbol("test")

但所有新方法都改变了一个可爱的模板。

例如,

NanNew<v8::Integer>(1)表示整数。

答案 1 :(得分:0)

NodeJS 0.11.13让我哭泣。

我可以提出nan library。 NodeJS的一些维护者开发了这个lib。这很完美。

我需要没有代表的解决方案,我建议String::newFromUtf8

免责声明:我讨厌在V8库中弃用。

答案 2 :(得分:0)

V8的字符串API前一段时间已被清理,以便更加明确地对Unicode编码,并避免与即将推出的ES6符号概念混淆。

您现在想要使用String::NewFromUtf8,String :: NewFromOneByte或String :: NewFromTwoByte以及相应的参数。