我使用這個代碼:回調處理程序不concating串
if (msg[0] == '!web')
{
var result = '\x032[\x02status\x02]\x03 Web: ';
checkPortTCP('127.0.0.1', 80, function() {
result += JSON.stringify(this).slice(1, -1);
});
bot.say(channel, result);
}
當我在我的頻道類型的網絡,其結果是:
[status] Web:
沒有實際輸出。
checkPortTCP:
function checkPortTCP(host, port, cb)
{
net.createConnection(port, host).on("connect", function(e) {
cb.call("online");
}).on("error", function(e) {
cb.call("offline");
});
}
我正在爲一個IRC殭屍狀態。最終結果應該是...網絡:在線/離線
result += JSON.stringify(this).slice(1, -1);
應concat結果變量,然後說出它到我的頻道。但出於某種原因,它不會串聯字符串。
謝謝!發生
歡迎來到SO。請在你的帖子中提出一個明確的問題。很難說出你需要什麼幫助。 – simbabque
@simbabque我編輯了這篇文章。 – user3125559
將其簡化爲http://jsfiddle.net/simbabque/P4U3M/告訴我問題不在於你的'result + ='行。相反,它必須使用'on()'處理程序。他們似乎沒有工作。我不熟悉節點,所以我不能再幫忙了。嘗試添加一個默認處理程序或查看'createConnection'方法的文檔。 – simbabque