Как удалить канал (текстовый или голосовой) из канала категории? - PullRequest
0 голосов
/ 14 января 2019

Я создаю бот-диск, используя Discord.js. Я могу настроить родительский уровень / категорию текстовых и голосовых каналов и переключить их на каналы других категорий, как мне будет угодно. Тем не менее, я не могу сделать канал без родителей, если он уже есть. Если быть более точным, если я динамически создаю текстовый канал, он будет автоматически размещен в верхней части без включения в категорию.

Test channel is the channel that was created

Когда я решаю включить его в категорию, он идет внутрь, как и должно быть. Но я не могу удалить канал из категории и снова поместить его на вершину, не удаляя канал и не создавая его заново. Повторюсь, я могу переместить его в категорию штрафа, но я не могу переместить его обратно туда, где находятся общие и ток-каналы.

Test channel inside test category

Я посмотрел на объект канала в консоли, и единственное, что отличалось, это parentID. Поскольку очевидно, что у 'general' нет родителя, идентификатор равен нулю. ParentID не является свойством только для чтения, поэтому я решил, что могу просто изменить parentID 'test-channel' на null, чтобы решить проблему, но это тоже не сработало. Насколько я вижу, нет способа вернуть его обратно в состояние отсутствия родителей после его усыновления.

Я использую стандартный способ (в соответствии с документами) присвоения ему родителя ( ссылка на документы ). Однако вместо идентификатора я использую реальный объект канала.

Я знаю, что это возможно, просто перетащив канал из категории и вернувшись наверх. Это заставляет меня думать, что должен быть способ сделать это с помощью этого API.

1 Ответ

0 голосов
/ 15 января 2019

setParent(null) определенно должно работать. Я проверял это недавно, и он работал как шарм. Я использую Discord.js 11.4.2.

...