我的代码有效但不是我想要的。
不和谐的输出为Your name is undefined
。
我希望它是Your name is Boanak
。我需要它是从表中获得的值。
我正在使用不和谐的机器人,用户必须注册才能使用其中的一些命令。提前谢谢!
getPlayerid = function(client, message, callback){
var member = message.member.user;
var db = new sqlite3.Database('Matches');
db.serialize(function() {
db.all(`SELECT Name FROM Users WHERE Nameid =`+member.id, function(err, allRows){
if(err != null){
//console.log(err);
callback(0);
}
callback(allRows);
db.close();
});
});
}
z = getPlayerid(client, message, function(data){
})
message.channel.send(`Your Name is ${z}`);
答案 0 :(得分:0)
您的代码ID );
您的名称是$ {z} undefined
中的问题是在查询返回结果之前执行的,因此输出getPlayerid = function(client, message, callback){
var member = message.member.user;
var db = new sqlite3.Database('Matches');
db.serialize(function() {
db.all(`SELECT Name FROM Users WHERE Nameid =`+member.id,
function(err, allRows){
if(err != null){
//console.log(err);
callback(0);
}
callback(allRows);
db.close();
});
});
}
/* moved the statement in the callback function */
z = getPlayerid(client, message, function(data){
message.channel.send(`Your Name is ${data}`);
});
。
minrun = length
remaining_bits = length.bit_length() - 6
if remaining_bits > 0:
minrun = length >> remaining_bits
mask = (1 << remaining_bits) - 1
if (length & mask) > 0: minrun += 1
答案 1 :(得分:0)
您的函数是异步的,因此您的变量不能在函数之外使用。
我认为你必须做这样的事情:
configurations.all {
resolutionStrategy {
failOnVersionConflict()
}
}
希望它有所帮助。