异步函数中的Javascript全局变量?

隆特

我想_userRegister从asycn函数的结果中创建一个全局变量怎么做?

    /* Socket.io-client Function */

    function reportSignUp(socket, date) {
       // sent to socket server
        socket.emit('report signup', date);

       // listenning response from server 
        socket.on('users signup', function (data) {
           // data is the result from server
            console.log('user register', data);


           // make data global
           _userRegister = data;
        });
    }
    ;

    /* End Socket.io-client Function */

    $(function () {


        var _userRegister;

        var socket = io();

        var date = getDateTime(); // get current time from system

        reportSignUp(socket, date);

        console.log("_userRegister",_userRegister); // <- underfine
    });

</script>
尤里·塔拉班波(Yury Tarabanko)

让您的函数返回一个promise。如果您需要在其他地方访问此异步值,则可以在全局范围内保存promise。

function reportSignUp(socket, date) {
   var dfd = $.Deferred();
   // sent to socket server
    socket.emit('report signup', date);

   // listenning response from server 
    socket.on('users signup', function (data) {
       // data is the result from server
        console.log('user register', data);


       dfd.resolve(data);
    });

    return _userRegistering = dfd.promise();
}

/* End Socket.io-client Function */

$(function () {


    var _userRegister;

    var socket = io();

    var date = getDateTime(); // get current time from system

    reportSignUp(socket, date).then(function(userData) {
        console.log("_userRegister", userData); 
    });

    // or

    _userRegistering.then(function(userData) {
        console.log("_userRegister from global variable", userData); 
    })
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

异步函数中的Javascript全局变量?

来自分类Dev

在javascript函数中设置全局变量

来自分类Dev

如何在 Javascript 中的异步函数内分配全局变量?

来自分类Dev

在异步函数或内部promise中设置全局变量的值?

来自分类Dev

从python中的异步函数修改全局变量

来自分类Dev

Javascript:不修改滑块函数中的全局变量

来自分类Dev

JavaScript:在函数中初始化全局变量

来自分类Dev

JavaScript:在函数中初始化全局变量

来自分类Dev

如何在javascript中的函数内使用全局变量?

来自分类Dev

Javascript:匿名函数,访问全局变量

来自分类Dev

Javascript避免函数之间的全局变量

来自分类Dev

Javascript函数更改全局变量(数组)

来自分类Dev

Nest函数更新全局变量Javascript

来自分类Dev

类函数内的Javascript全局变量

来自分类Dev

PHP在函数中声明全局变量

来自分类Dev

在函数JS中更改全局变量

来自分类Dev

全局变量未在函数中识别

来自分类Dev

封装在函数中的全局变量

来自分类Dev

在函数中设置全局变量

来自分类Dev

全局变量未在函数中定义

来自分类Dev

全局变量未在函数中识别

来自分类Dev

函数中的全局变量未更新

来自分类Dev

将异步函数的结果保存到全局变量

来自分类Dev

如何仅在异步代码块完成后访问 JavaScript 中的全局变量

来自分类Dev

Javascript中的全局变量以及如何从then()JavaScript函数返回变量

来自分类Dev

指向JavaScript中的全局变量的指针

来自分类Dev

全局变量未在JavaScript中更新

来自分类Dev

无法在javascript中修改全局变量

来自分类Dev

目标c中的Swift全局变量和全局函数