Home > Article > Web Front-end > Vue advanced tutorial: How to use NetEase Cloud API to implement song playback history function
Vue Advanced Tutorial: How to use NetEase Cloud API to implement the song playback history function
Introduction:
With the rapid development of the Internet, music has become an indispensable part of people's lives. In today's era, many people like to enjoy their favorite music through NetEase Cloud Music. It not only has a huge music library and high-quality sound quality, but also provides rich community functions. This article will introduce how to use the Vue framework and NetEase Cloud API to implement a song playback history function, allowing users to easily review their playback history.
First, we need to install Vue CLI through the following command:
npm install -g @vue/cli
Then, we can use Vue CLI to create a new project:
vue create my-music-app cd my-music-app
Implementing the song playback history function
In the Vue project, we can use Vue Router to switch between different pages. First, we need to install Vue Router and create a new page to display song playback history. Enter the following command on the command line to install Vue Router:
npm install vue-router
Next, create a new folder pages in the src directory, and create a folder named History in the pages folder folder and create a file called History.vue inside it. The following is a sample code:
<template> <div> <h1>歌曲播放历史记录</h1> <ul> <li v-for="song in songs" :key="song.id"> {{ song.name }} - {{ song.artist }} </li> </ul> </div> </template> <script> export default { data() { return { songs: [] }; }, methods: { fetchHistory() { // 在这里调用网易云API获取歌曲播放历史记录 } }, mounted() { this.fetchHistory(); } }; </script>
Import the History component in App.vue and set routing in router/index.js so that users can access the song playback history page by clicking on the link. The following is a sample code:
// App.vue <template> <div id="app"> <router-view/> <router-link to="/history">查看播放历史记录</router-link> </div> </template> <script> export default { name: 'App' }; </script> // router/index.js import Vue from 'vue'; import VueRouter from 'vue-router'; import History from '../pages/History/History.vue'; Vue.use(VueRouter); const routes = [ { path: '/history', name: 'History', component: History } ]; const router = new VueRouter({ mode: 'history', base: process.env.BASE_URL, routes }); export default router;
Calling NetEase Cloud API to obtain song playback history
In order to call NetEase Cloud API to obtain song playback history, we can use the Axios library to send HTTP request. First, we need to install Axios in the project. Enter the following command on the command line:
npm install axios
Next, we need to add some code to the History component to call the API and display the obtained data on the page. The following is a sample code:
// History.vue <script> import axios from 'axios'; export default { data() { return { songs: [] }; }, methods: { async fetchHistory() { try { const response = await axios.get('https://api.music.163.com/history'); this.songs = response.data; } catch (error) { console.error(error); } } }, mounted() { this.fetchHistory(); } }; </script>
So far, we have completed the steps of using the NetEase Cloud API to implement the song playback history function. Users can now click on a link to access the song playback history page, where information about recently played songs will be displayed.
Conclusion:
This article introduces in detail how to use the Vue framework and NetEase Cloud API to implement the function of song playback history. By studying this article, readers can learn how to use Vue Router to implement route switching, how to call NetEase Cloud API to obtain song playback history, and how to display the obtained data on the page. I hope this article can be helpful to readers and enable them to use the Vue framework and NetEase Cloud API more flexibly to implement various functions.
The above is the detailed content of Vue advanced tutorial: How to use NetEase Cloud API to implement song playback history function. For more information, please follow other related articles on the PHP Chinese website!