我在苹果电脑上。我刚刚安装了角IDE (eclipse),当我尝试创建一个新的角项目时,它失败了。我可以在终端上运行相同的命令,它可以工作。我在IDE之外使用节点8.9.1和NPM5.5.1,但找不到告诉插件使用该版本的位置。
Node.js version: v9.1.0
NPM version: 5.5.1
npm install @angular/cli@1.4.9
npm WARN npm npm does not support Node.js v9.1.0
npm WARN npm You should probably upgrade to a newer v
Chrome的远程调试器非常适合连接到支持V8远程调试协议的V8主机应用程序。然而,尽管一些使用V8的应用程序提供了此协议支持,但似乎没有任何预先存在的库或类似库可用于将此协议支持添加到新的基于V8的应用程序堆栈中。
具体地说,我在Android上有一个NDK应用程序,它使用V8作为脚本引擎,我想知道启用它以获得远程调试支持的最简单方法。
我看过V8::Debug API (通过v8.h和Doxygen),但它似乎没有任何对实际有线协议的内置支持,理想情况下,我希望能在其上运行套接字服务器的东西(或者更好的是,只与adb一起工作的东西,如WebView或类似的)。
我想做的是从c++调用JS/v8中已经编译的函数。我这样做是为了一个我正在编写的游戏引擎,它使用V8作为脚本后端。
以下是为我的引擎格式化脚本的方式:
function init(){ //this gets called at the startup of the game
print("wambo");
}
var time = 0;
function tick(delta){ //this gets called every frame
time += delta;
print("pop");
}
我试着在这个编译后的文档中查找v
我试图了解nodeJS的引导是如何工作的,但是我被函数require所堆叠。
第一次使用require 1)internal/bootstrap/loaders.js (见下图)在src/node.cc中传递到此文件中,因为1)internal/bootstrap/loaders.js接受internal/bootstrap/loaders.js的要求(该要求在步骤1)internal/bootstrap/loaders.js use internalBinding之前执行,使用getInternalBindinggetInternalBinding create from ...src/no
在浏览树时,在src目录下,有一些js文件,提供了一些基本的JS对象,如Math、Array等。在浏览这些文件时,我看到了标识符,它们的名称中包含了百分比符号(%),即%Foo。我起初天真地认为这是JS标识符中允许的其他字符,但当我尝试使用shell时,它对我大喊大叫,说我违反了语法规则。但是,如果这是语法错误,d8如何工作呢?下面是实际源代码中的一个示例:
src/apinatives.js第44至47行,git克隆于github/v8/v8
function Instantiate(data, name) {
if (!%IsTemplate(data)) return data;
因此,我有一个具有承诺支持的nodejs:
$ node -v
v0.11.11
但当我试图使用承诺时,我有一个错误:
$ node --harmony test.js
require, module, __filename, __dirname) { var promise = new Promise(fu
^
ReferenceError: Promise is not defined
at Object.<anonymous>