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

由于NodeJS升级到0.11.13,集成了V8引擎3.24.35.22我得到这个错误在一些C + +模块:

error: 'NewSymbol' is not a member of 'v8::String' 

那么我该怎么做,而不是NewSymbol?

谢谢

V8做了一些改变。 我同意你需要使用NaN来获得更好的V8演进。 这是一个很好的macros观框架。

v8::String::New("test")被转换成NanSymbol("test")

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

NanNew<v8::Integer>(1) ,例如,一个整数。

前段时间,V8的stringAPI已经被清除,以更加明确Unicode编码,并避免与即将到来的ES6符号概念混淆。

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

NodeJS 0.11.13让我哭了。

我可以提出南图书馆 。 一些NodeJS的维护者开发了这个库。 这十分完美。

我你需要解决scheme没有String::newFromUtf8 ,我推荐String::newFromUtf8

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