问题标签 [node8.2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
390 浏览

node.js - 是否有任何使用 async_hooks 检索异步堆栈跟踪的 npm 模块?

节点 8 中有一个名为“async_hook”的新 API,我相信它应该使模块作者能够打印异步堆栈跟踪。我正在寻找类似于 chrome dev-tools 异步堆栈跟踪实现但在开发/调试期间从控制台使用的东西。

我知道这会带来性能开销——但这对我来说很好。

有人知道正在开发的任何模块吗?

0 投票
1 回答
273 浏览

node.js - 带有解压缩内容的节点 js spawn/exec 的奇怪行为

我正在尝试编写一个客户端,它使用带有 mqtt 的 nodejs 安装和更新包。我测试了数据传输和归档的所有功能,但是当我进入 Windows 环境并实际上尝试运行一些脚本时,我遇到了一些奇怪的错误。

我将添加一些代码,以便任何人都可以清楚地看到我如何将下载的内容写入磁盘,但首先我将解释行为。

每次迭代采取的步骤:

  • 从 mqtt 下载内容(作品)
  • 创建缓冲区并从中流式传输(有效)
  • 将流解压缩到磁盘(有效)
  • 在下载的内容中运行批处理作业(发生奇怪的事情)
  • 运行另一个批处理作业(甚至更陌生)

奇怪的事情:第一次尝试 spawn/exec 响应:error spawn cmd.exe ENOENT,但在第二次尝试(由主题订阅触发)时,它超过了那个阶段。但是当第一个批处理作业通过第二个作业时的下一次迭代返回错误:EBUSY: resource busy or locked, open C:\...appt@0.0.1\nssm.exe'nssm.exe 是从批处理作业调用的文件

下载和提取代码:

用于运行批处理作业的代码:

0 投票
0 回答
561 浏览

javascript - 错误:写入 EPIPE node8

这是https://github.com/mapbox/ecs-watchbot/pull/205/files#diff-644d8ede25bb88427ccf4229d03bba1bR19打破测试

在这里,当在本地运行 npm run test 时会失败

0 投票
0 回答
143 浏览

javascript - 写入子子进程

版本:v8.10.0 平台:Darwin Tapaswenis-MBP 16.7.0 Darwin Kernel Version 16.7.0:; 根:xnu-3789.73.8~1/RELEASE_X86_64 x86_64

我正在尝试将字符串添加到子子进程标准输出。我希望此代码能够在不编辑主进程的现有测试用例的情况下工作。

我从尝试开始child.stdout.writechild.stdout.write('some_string') 我能够在子子进程输出中记录 some_string,我的测试失败并出现以下错误

events.js:183 抛出错误;// 未处理的“错误”事件 ^ 错误:在 WriteWrap.afterWrite [as oncomplete] (net.js:864:14) 的 _errnoException (util.js:992:11) 处写入 EPIPE

现在要找出它失败的原因,我检查了它是否EPIPE已关闭以写入类似的东西。

child.stdout然后我记录了原来的属性writable is false。与stderr.write子子进程相同。写入子子进程的另一个选项是使用child.stdin,我记录了它的属性,但它给出了null。很好,但我能够用它记录字符串。

child.stdout属性,我可以管道但不能写为writable假的?我在这里没有找到任何有关此的信息。

现在,在添加 child.stdin 之后,在我对主进程的测试中,我做了类似的事情

process_data是我得到的主要流程数据(基本上在添加之前.stdin能够获取主要流程记录的数据。现在由于某种原因这已经变得未定义。基本上当我记录的属性时process.stdout.write,args 是空白的,所以它没有获取 args .

为什么在子子进程上写入.stdin会影响process.stdout.write主进程的参数?我在这里想念什么?如果我在这里遗漏了什么,将不胜感激任何指针甚至链接。

我正在做的这个项目是开源的,如果有帮助的话可以分享整个代码。

0 投票
1 回答
28 浏览

node.js - 通过快速路由器时类函数中未定义值的问题

我在节点 8 中有一个简单的类,但存在this值问题。

我遇到的问题是this价值未定义。上面的控制器由路由器触发:

0 投票
0 回答
37 浏览

docker - Docker 节点 8 中的 JSPM 安装问题 - 未经授权的 GitHub API 响应

我正在尝试安装 jspm deps,但每次运行 jspm install 时都会遇到问题

得到这样的错误

对于其他包也有同样的错误,注意到有时我无法下载不同的包。

我已经设置

cat ~/.jspm/config 显示一切正常

我还在 github 令牌设置中设置了具有 public_repo 权限的 GITHUB_API_KEY 。

因此,传递给 github 的凭据似乎有问题,我试图找出问题所在,但只是浪费了我的时间(看起来以前没有人遇到过)有人可以帮助我吗?