música vue
Baixar dependências
Iniciar um projeto
Projeto de pacote
Endereço GitHub de back-end
https://github.com/Binaryify/NeteaseCloudMusicApi Versão correspondente durante o desenvolvimento: 4.0.23 Se ocorrerem problemas, escolha a versão mais recente
Visualizar endereço
Imitação de endereço de visualização de música NetEase Cloud
versão uni-app
armazém de versão uni-app
Função atualmente concluída
- Reprodutor de músicas: reproduzir, arrastar progresso, ajuste de volume, download, lista de reprodução, rolagem de letras de páginas de músicas, comentários
- Página de descoberta: recomendações, playlists, cantores, classificações, músicas mais recentes (novas músicas expressas, novos álbuns nas prateleiras (novos álbuns esta semana))
- Login: Faça login com número de celular e senha, faça login com código QR, faça login com código de verificação, saia
- Lista de músicas: como música, entrada de álbum, entrada de cantor, linha de música atualmente tocando
- Cada página de detalhes
- Página de detalhes da lista de reprodução: lista de músicas, pesquisa na página da lista de reprodução, carregamento da lista de reprodução completa, coleção, comentários
- Página de detalhes do álbum: lista de músicas, pesquisa, coleção, comentários, detalhes do álbum
- Página de detalhes do cantor: lista de álbuns, descrição do cantor, MV, cantores semelhantes
- Página de detalhes do vídeo: reprodução de vídeo (reprodução usando vídeo e controles nativos), recomendações de vídeo semelhantes, reprodução de MV, recomendações de MV, curtidas, coleções, comentários e seguidores de criadores
- Página de detalhes do usuário: informações básicas, região (suporta apenas regiões nacionais), playlists criadas, playlists favoritas, informações pessoais atualizadas e avatar
- Pesquisa: músicas, cantores, playlists, usuários, MVs, pesquisas de álbuns, listas de pesquisas populares, sugestões de pesquisa, acesso rápido aos resultados da pesquisa
- Comentários (requer login): curtidas, respostas, comentários, paginação de comentários e salto de número de página e animações de caixa de entrada de salto de resposta
- Vídeo (requer login): lista de vídeos, lista de MV, página de todos os MV, página de classificação de MV
- Minha coleção (requer login): álbuns coletados, MVs, cantores e funções de filtragem
- Reproduzido recentemente (armazenamento local, não gravação de reprodução na nuvem)
- FM privado (requer login): play, lixo, curtidas, comentários, rolagem de letras (o desempenho aqui não é o mesmo do NetEase Cloud, se você quiser que seja consistente, precisa mudar bastante)
- Todas as páginas são adaptadas para dispositivos móveis
- Carregamento lento de rotas e fragmentação de código, adição de proteções de navegação quando não estiver conectado e desacoplamento de adereços de rota
- Use Vuex para gerenciar o status de login, a lista de músicas atuais e o status das músicas e outros status de vários componentes
- A interface de compartilhamento serve para compartilhar com a dinâmica do NetEase Cloud. Como a parte dinâmica ainda não foi feita, todo compartilhamento é inválido. De acordo com o NetEase Cloud, o desempenho de coletar todas as músicas é coletar para uma playlist criada ou criar uma nova playlist. Ainda não foi adicionado.
BUG ou ATUALIZAÇÃO
- Adicionadas restrições ao carregamento de músicas completas na playlist (durante o uso, foi encontrada uma playlist com 6.000 singles, e usar trackIds para solicitar as músicas correspondentes causaria um erro 431)
- Adicionar limite no número de músicas tocadas recentemente 19/11
- Resolva o bug que após adicionar o protetor de navegação, o status de login perdido é atualizado e o erro de navegação ocorre após readquirir o status de login 20/11
- Adicionado parar a reprodução da música enquanto o vídeo está sendo reproduzido
- Resolva o problema de que os dados não podem ser atualizados ao trocar de cantores em guias de cantores semelhantes na página de detalhes do cantor
- Adicionar animação js de rolagem das letras
- Adicionar animação de troca de visualização de roteamento
- Adicionada animação de troca de guia na página de detalhes do cantor para carregar dados e avisar quando estiver vazio
- Adicione o diretório @root e modularize a API por função para facilitar o gerenciamento
- Encontramos um problema de que o conteúdo do backup do escopo denominado slot não entra em vigor após ser empacotado. Ele se comporta normalmente no ambiente de desenvolvimento e ainda não foi resolvido. Só podemos usar todo o conteúdo do backup.
- Encontrei um problema que excede o número máximo seguro de JS, que ainda não foi resolvido (a imagem na informação da música obtida ao obter as sugestões de pesquisa é NULL, mas o ID da imagem está lá, mas é impreciso se exceder o número seguro). Você pode definir axios para processar os dados sozinho (o padrão do axios é JSON.parse direto), existem plug-ins relacionados.
- Resolva o bug de clicar o usuário na área de comentários da página da música para pular para a rota do usuário, mas a interface de reprodução não fecha, e o bug que a página do usuário não muda com o ID, exclua a lógica duplicada do componente de reprodução
- O contorno do terminal móvel não possui cantos arredondados, portanto substitua-o por uma borda.
- Integre lista de álbuns, lista de playlists e lista de cantores em um único componente
- Congelar apenas dados renderizados para otimizar o desempenho
- Integre os detalhes do vídeo e a página de detalhes do MV em um único componente
- A maioria das subpáginas usa a mesma barra de rolagem, monitora o endereço de roteamento, redefine a barra de rolagem e redefine a barra de rolagem da página de reprodução de música ao alterar as músicas.
- Corrigido o bug de números longos em comentários que não quebravam
- Resolva o bug de que o progresso da música é adiantado e a linha de ativação da letra permanece inalterada. A fonte de tempo atual para o julgamento da rolagem da letra foi alterada (antes era o tempo de reprodução do áudio em tempo real e agora é o tempo atual enviado para). vuex após processamento pelo primeiro, que pode ser um pouco atrasado ou antecipado); extrair o componente da letra (FM privado precisa ser reutilizado)
- O Chrome tem restrições sobre tags de mídia, que exigem a interação do usuário para serem reproduzidas automaticamente.
- Adicione informações da lista de reprodução criadas por edição e use o plug-in VueCropper para cortar imagens
- Adicionar informações pessoais inclui cortar e alterar o avatar, sem adicionar uma região, cortar e processar a imagem em um objeto blob e encapsulá-la em um componente (capa da lista de músicas e avatar pessoal)
- Cancelar usando Nprogress
- A página do cantor cancela o uso de ELTABS e usa TabMenu no projeto, modifica o método get da solicitação de axios encapsulada e altera a forma de tratamento de erros para que possa ser recebido por async/await;
- Alguns carregamentos de CDN de plug-ins são um pouco lentos, resultando em uma longa tela branca ao carregar pela primeira vez.
- Resolva o bug de não retornar à página inicial após sair e carregar lentamente algumas imagens da página
- Adicionado carregamento lento de algumas imagens, removido alguns esqueletos irracionais e alterado a padronização do uso de componentes.
- E altere os bugs encontrados na refatoração da versão vue3 + ts