Не могу выйти из exec. Локальная переменная для передачи IP-адреса? - PullRequest
0 голосов
/ 06 августа 2011

Вопрос связан с Получить локальный IP-адрес в node.js

Могу ли я попросить немного помощи?

В этом примере использования,

getNetworkIP(function (error, ip) {
console.log(ip);
if (error) {
    console.log('error:', error);
}}, false);

как можно получить значение ip за пределами обратного вызова? Например, чтобы использовать его для подключения или что-то еще. Я пытался вернуть его, экспортировать, передать, но ни один из этих методов не работает. Пожалуйста, помогите мне, я схожу с ума !!

Спасибо!

P.S .: этот код был очень полезен для меня, чтобы понять немного больше. Я действительно новичок. Спасибо миллион за то, что поделился им.

1 Ответ

0 голосов
/ 06 августа 2011

Как Хуан Мендес пытался сказать вам, что ваш звонок асинхронный.Это означает, что узел продолжит выполнение кода, а затем получит обратный вызов.Что бы вы ни делали со своим IP, вы можете сделать это либо внутри своего обратного вызова, либо сохранить его как глобальную переменную.

var myIP = '';

getNetworkIP(function (error, ip) {
    if (error) {
        console.log('error:', error);
    }else{
        myIP = ip;
        MyFunctionToConnectTo(myIP);
    }
}, false);
...