Проблема с client.channels.get (); / client.channels.find (); - PullRequest
0 голосов
/ 22 апреля 2020

Я работал над ботом-диссонансом и хочу отправить сообщение, как только оно появится в сети на заданном канале объявлений. Я думаю, что знаю, как заставить это работать, но у меня все та же проблема. Я прочитал несколько статей, но они не решают проблему, которую я имею client.channels.get is not a function. Я не просто хочу изменить его на идентификатор канала, поскольку хочу, чтобы его можно было использовать на других серверах, кроме моего. Я новичок ie в API раздора и кодировании в целом. Вот почему я не использую слишком сложное кодирование, так как хочу узнать, что оно делает, вместо того, чтобы копировать то, чего я не понимаю. Благодаря.

Ответы [ 2 ]

0 голосов
/ 22 апреля 2020

После разногласий. js v12 теперь вам нужно использовать .cache для доступа к channels коллекции.

Использовать client.channels.cache.get() или client.channels.cache.find(channel => channel.name === 'Test') вместо.

0 голосов
/ 22 апреля 2020

Чтобы получить какие-либо свойства от объекта client, его необходимо загрузить из события. Скажем, например, внутри события ready, т.е. когда бот полностью загружен, вы можете выполнить client.channels.cache.find(channel => channel.name == "name_of_channel"), et c. Чтобы прослушать событие, вы делаете client.on("event_name_here", (parameters) => {}).

. Чтобы просмотреть список событий, взгляните на: https://discord.js.org/# / docs / main / stable / class / Client

Если это не помогло, пожалуйста, опубликуйте свой код, чтобы мы могли правильно определить проблему.

...