TypeError: play is not a function

477
04 июня 2021, 13:20

Код:

async function play(connection, songs, guild_queue) {
    guild_queue.play = true;
    const music = await ytdld(songs[0], { filter: 'opus audioonly', format: 'mp3' });
    const play = connection.playOpusStream(music, { voulme: 0.5 });
    play.on('end', end => {
        console.log(end);
        songs.shift();
        if (songs.length > 0) {
            play(connection, songs, guild_queue);
        } else {
            connection.disconnect();
            guild_queue.play = true;
        }
    });
}
Answer 1
async function play(connection,songs,guild_queue) {
  guild_queue.play = true;
  let music = await ytdld(songs[0],{filter: 'opus audioonly',format: "mp3"});
  let play = connection.playOpusStream(music,{voulme: 0.5});
  play.on('end', (end) =>{
    console.log(end);
    songs.shift();
    if(songs.length > 0) {
      // вы уже переписали play
      // там сейчас хранится результат connection.playOpusStream(music,{voulme: 0.5});
      // который не является функцией, поэтому и ошибка
      play(connection,songs,guild_queue);
    } else {
      connection.disconnect();
      guild_queue.play = true;
    } 
  })
}

Просто поменяйте название переменной внутри функции play, что бы не было оверрайда

READ ALSO
getElementsByClassName + onclick на элемент полученной коллекции

getElementsByClassName + onclick на элемент полученной коллекции

Нужно чтобы при клике в браузере на слова "просто", "средне", "сложно" в div с классом result вставлялось значение + значение дата атрибутаСейчас...

242
Нахождение обьекта в WeakMap или WeakSet

Нахождение обьекта в WeakMap или WeakSet

Почему false? И как мне найти объект, если их будет много? Причем в Set() и Map() тоже самоеЕсли добавлять вместо объектов примитивные типы - то true

124
React и Spring приложение, webpack

React и Spring приложение, webpack

Не получается сделать приложение Spring + React по туториалу https://springio/guides/tutorials/react-and-spring-data-rest/

89