Discord.js Null检查在TypeScript中不起作用

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.

我一直试图让我的discord机器人在TypeScript中工作,但我遇到了一个问题。我试图执行msg.reply(字符串),但它说“无法调用可能为‘null’的对象”,即使我刚刚检查了它是否为null。以下是我当前的代码:

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”);
}
});

感谢您的快速回复,但这似乎没有改变任何事情。我还是犯了同样的错误。很抱歉!请您将完整的编译器输出添加到您的示例中,同时请确保它是最小的和可复制的…感谢您的快速回复,但这似乎没有改变任何事情。我还是犯了同样的错误。很抱歉!请将完整的编译器输出添加到您的示例中,同时请确保它是最小的和可复制的。。。