簡體   English   中英

node.js將數組傳遞給mysql回調

[英]node.js pass array to mysql callback

是否有可能將數組傳遞到mysql回調中,例如:

connection.query('SELECT count(id) as wynik FROM used where asset_id = 
  \''+asid+'\'', inventory[i],function(err,wiersze){
    console.log(inventory[i]);
});

現在inventory[i]里面不可用,但是我需要它。

在字符串后直接傳遞您的callback()

嘗試這個 :

connection.query("SELECT count(id) as wynik FROM used where asset_id = " + asid, function(err, rows){
     /* check errors here */
     console.log(rows);
 });

由於您位於for循環內,因此需要使用立即調用的匿名函數或簡單的.forEach() 兩者均作為示例提供。

立即調用匿名功能

for (var i = 0; i < inventory.length; i++) {
    (function(i) {
        if (inventory[i].market_hash_name == rows[j].real_name) {
            var asid = inventory[i].assetid;
            connection.query('SELECT count(id) as wynik FROM used where asset_id = \'' + asid + '\'', function(err, wiersze) {
                console.log(inventory[i]);
                process.exit(1);
                if (wiersze[0].wynik == 0) {
                    var employee = {
                        asset_id: asid,
                        trans_id: rows[j].tid
                    };
                    connection.query('INSERT INTO used SET ?', employee, function(err, res) {
                        if (err) throw err;
                        offer.addMyItem(inventory[i]);
                    });
                    licznik++;
                }

            });

        }
    })(i);
});

.forEach()

inventory.forEach(function(item) {
    if (item.market_hash_name == rows[j].real_name) {
        var asid = item.assetid;
        connection.query('SELECT count(id) as wynik FROM used where asset_id = \'' + asid + '\'', function(err, wiersze) {
            console.log(item);
            process.exit(1);
            if (wiersze[0].wynik == 0) {
                var employee = {
                    asset_id: asid,
                    trans_id: rows[j].tid
                };
                connection.query('INSERT INTO used SET ?', employee, function(err, res) {
                    if (err) throw err;
                    offer.addMyItem(item);
                });
                licznik++;
            }

        });

    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM