使用‘==’运算符比较消息链是否相同的问题
EnkanSakura opened this issue · 2 comments
EnkanSakura commented
直接使用‘==’对MessageChain对象进行比较时,会同时比较MessageChain的Source组件,导致mirai码相同的消息链的比较结果为False
需要一个只对消息内容进行比较的方法
Wybxc commented
这一问题属于MessageChain
的设计失误,我会考虑在0.3.0版本中重构MessageChain
的一些设计,来避免这个问题。
当前版本中,可以先用exclude
方法去除Source
元素后,再进行比较,例如:
msg1.exclude(Source) == msg2.exclude(Source)
Wybxc commented
0.3.0 更新中解决了这个问题(应该吧)