我正在用 golang 編程語言編寫一個電報(bào)機(jī)器人。當(dāng)用戶離開或加入時如何發(fā)送消息?我試試這個if (message.UserJoined == true){
bot.SendMessage(message.Chat, "" ,nil)
}但它不起作用,我收到此錯誤./main.go:291: invalid operation: message.UserJoined == true (mismatched types telebot.User and bool)
2 回答

紫衣仙女
TA貢獻(xiàn)1839條經(jīng)驗(yàn) 獲得超15個贊
UserJoined 是定義的用戶結(jié)構(gòu):
// UserJoined 可能是機(jī)器人本身。
UserJoined User `json:"new_chat_participant"`
在這里找到
它與布爾值不匹配
如果沒有看到其余的代碼,我無法判斷您正在測試該消息的目的。
我相信你需要的是什么
if message.UserJoined.ID > 0 {
//Dosomething
}

郎朗坤
TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個贊
在這種情況下,因?yàn)槟噲D比較兩種不同的類型,所以它失敗了。但是,我不確定您使用的是哪個 API,或者您是否使用自己的 API,所以我不確定 message.UserJoined 應(yīng)該代表什么。但是,我認(rèn)為根據(jù)您的明顯用例,您應(yīng)該將其與 nil 進(jìn)行比較。即使用 if message.UserJoined != nil {}
- 2 回答
- 0 關(guān)注
- 182 瀏覽
添加回答
舉報(bào)
0/150
提交
取消