Discord.js Null检查在TypeScript中不起作用
我一直试图让我的discord机器人在TypeScript中工作,但我遇到了一个问题。我试图执行msg.reply(字符串),但它说“无法调用可能为‘null’的对象”,即使我刚刚检查了它是否为null。以下是我当前的代码:Discord.js Null检查在TypeScript中不起作用,typescript,discord.js,Typescript,Discord.js,我一直试图让我的discord机器人在TypeScript中工作,但我遇到了一个问题。我试图执行msg.reply(字符串),但它说“无法调用可能为‘null’的对象”,即使我刚刚检查了它是否为null。以下是我当前的代码: import Discord = require("discord.js"); const client: Discord.Client = new Discord.Client(); client.on("ready", () => { console.
import Discord = require("discord.js");
const client: Discord.Client = new Discord.Client();
client.on("ready", () => {
console.log(`connected as ${client.user?.tag}`);
});
client.on("message", msg => {
if (msg == null){
return;
}
msg.reply("hi");
});
我知道如果我关闭严格的空检查,我可以避免它,但我宁愿保持它
任何帮助都将不胜感激,谢谢
编辑:
以下是VS代码编译器给我的信息:
app.ts:14:5 - error TS2721: Cannot invoke an object which is possibly 'null'.
14 msg.reply("hi");
~~~~~~~~~
Found 1 error.
The terminal process terminated with exit code: 2
在条件块中粘贴使用
msg
的代码,例如:
client.on(“message”,msg=>{
如果(味精){
msg.回复(“hi”);
}
});
在条件块中粘贴使用msg
的代码,例如:
client.on(“message”,msg=>{
如果(味精){
msg.回复(“hi”);
}
});
感谢您的快速回复,但这似乎没有改变任何事情。我还是犯了同样的错误。很抱歉!请您将完整的编译器输出添加到您的示例中,同时请确保它是最小的和可复制的…感谢您的快速回复,但这似乎没有改变任何事情。我还是犯了同样的错误。很抱歉!请将完整的编译器输出添加到您的示例中,同时请确保它是最小的和可复制的。。。