Javascript 如何向discord.js中的特定频道发送消息?

Javascript 如何向discord.js中的特定频道发送消息?,javascript,discord.js,Javascript,Discord.js,阅读底部的编辑,更改整个问题。 是的,我知道以前有人问过这个问题。然而,我找不到一个有效的解决方案,也没有人反对。下面是我的代码中操作我试图复制的特定函数所需的部分 const Discord = require('discord.js'); const bot = new Discord.Client(); const client = bot const token = 'NunyaBuisness'; const channel = '525723958239852735' // Not

阅读底部的编辑,更改整个问题。

是的,我知道以前有人问过这个问题。然而,我找不到一个有效的解决方案,也没有人反对。下面是我的代码中操作我试图复制的特定函数所需的部分

const Discord = require('discord.js');
const bot = new Discord.Client();
const client = bot

const token = 'NunyaBuisness';
const channel = '525723958239852735' // Not a real channel ID
const PREFIX = '.';

bot.on('message', msg=>{
    let args = msg.content.substring(PREFIX.length).split(" ");
    switch(args[0]){
        case 'process':
            if(args[1] === 'test'){
                var testGuild = new Discord.Guild(bot, 'serverID');
                var testTextChannel = new Discord.TextChannel(testGuild, channel);
                testTextChannel.send("Test");
            }
        break;
    }
})
Bot在消息中返回以下内容

.工艺试验

B:\bot\node\u modules\discord.js\src\structures\Guild.js:152
this.large=布尔值('large'在数据中?data.large:this.large);
^
TypeError:无法使用“in”运算符在serverID中搜索“large”
在Guild.\u补丁(B:\bot\node\u modules\discord.js\src\structures\Guild.js:152:34)
在新公会(B:\bot\node\u modules\discord.js\src\structures\Guild.js:92:12)
在客户端。(B:\bot\index.js:101:33)
在Client.emit(events.js:311:20)
在MessageCreateAction.handle(B:\bot\node\u modules\discord.js\src\client\actions\MessageCreate.js:31:14)
在Object.module.exports[作为MESSAGE\u CREATE](B:\bot\node\u modules\discord.js\src\client\websocket\handlers\MESSAGE\u CREATE.js:4:32)
在WebSocketManager.handlePacket(B:\bot\node\u modules\discord.js\src\client\websocket\WebSocketManager.js:386:31)
在WebSocketShard.onPacket(B:\bot\node\u modules\discord.js\src\client\websocket\WebSocketShard.js:435:22)
在WebSocketShard.onMessage(B:\bot\node\u modules\discord.js\src\client\websocket\WebSocketShard.js:293:10)
在WebSocket.onMessage(B:\bot\node\u modules\ws\lib\event target.js:120:16)
谢谢你的帮助!我真的很感激。几天来,我一直试图用文档来解决这个问题,但总是失败

编辑

我认为问题在于CLIENT.channels.get('id')方法实际上并不存在。这太奇怪了,我正在通过GitHub查看是否缺少任何东西。在这一刻,我完全看不到任何遗漏。这太奇怪了。
感谢您迄今为止的帮助。

有关discord v12的更改:

msg.guild.channels.get(myChannel)
to
msg.guild.channels.cache.get(myChannel)

让myChannel='123213123'
bot.on('message',msg=>{
设args=msg.content.substring(PREFIX.length).split(“”);
开关(参数[0]){
案例“过程”:
如果(参数[1]=“测试”){
让targetChannel=msg.guild.channels.get(myChannel)
if(targetChannel)targetChannel.send('sssss')
}
打破
}
})

请指明哪一行是101。我怀疑它是
var testGuild=newdiscord.Guild(bot,'serverID')
看起来像是在传递一个字符串,其中需要一个对象。说应该是
newdiscord.Guild(客户,数据)
数据
应该是一个对象,但我不确定它应该包含什么。有一个从另一个调用中检索
数据的例子,但不清楚为什么或者代码做了什么为什么使用方法
newdiscord.Guild(
新建Discord.TextChannel
获取频道?@密码我真的没有任何线索。我只是放弃了,输入了当时的示例代码。我只想要“channel=somefunction(channelID)”之类的内容,所以我为您的问题添加了答案:)嗨!没有正确阅读此内容。这已被标记为正确答案。抱歉!
B:\bot\node_modules\discord.js\src\structures\Guild.js:152
    this.large = Boolean('large' in data ? data.large : this.large);
                                 ^

TypeError: Cannot use 'in' operator to search for 'large' in serverID
    at Guild._patch (B:\bot\node_modules\discord.js\src\structures\Guild.js:152:34)
    at new Guild (B:\bot\node_modules\discord.js\src\structures\Guild.js:92:12)
    at Client.<anonymous> (B:\bot\index.js:101:33)
    at Client.emit (events.js:311:20)
    at MessageCreateAction.handle (B:\bot\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14)
    at Object.module.exports [as MESSAGE_CREATE] (B:\bot\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32)
    at WebSocketManager.handlePacket (B:\bot\node_modules\discord.js\src\client\websocket\WebSocketManager.js:386:31)
    at WebSocketShard.onPacket (B:\bot\node_modules\discord.js\src\client\websocket\WebSocketShard.js:435:22)
    at WebSocketShard.onMessage (B:\bot\node_modules\discord.js\src\client\websocket\WebSocketShard.js:293:10)
    at WebSocket.onMessage (B:\bot\node_modules\ws\lib\event-target.js:120:16)