[问题] Node.js child.on("end")范例的Done印不出来

楼主: youtuuube000 (小孩)   2016-11-04 18:25:29
各位好
我在跑书上的范例
var child_process = require("child_process");
var ls = child_process.spawn("ls",["-l"]);
ls.stdout.on("data",function(data)
{
console.log(data);
});
ls.on("end",function(code)
{
console.log("Done");
});
当程式跑完后他却一直没办法印出Done这个字
想请问是出了什么问题呢?
用ls -l在command line下跑结果跟这程式的结果一模一样
但照理来说跑完后他应该要印出Done才对却没有印出来
先谢谢回答了
作者: djshen (djshen)   2016-11-04 20:03:00
确定有end event?
作者: Hevak (Arthow Eshes)   2016-11-05 02:18:00
应该是书上写错?我看了一下NodeJS的文件,child_process的event里面没有end,比较接近的应该是exithttps://nodejs.org/api/child_process.html所以你 ls.on('exit' //下略,就能看到你想看到的done
作者: TETZ (你今天宅了吗?)   2016-11-06 00:53:00
我看了一下我写过的是用'close'应该也可以

Links booklink

Contact Us: admin [ a t ] ucptt.com