我只有一个简单的错误,这使我困惑了将近3个星期。
我的问题是,我想在axios API URL的末尾从方法“ idvideo”返回字符串,但是什么也没发生。
如您在下面的代码中所见。
我一直在寻找解决方案并尝试过多次错误,但仍然找不到能帮助我的最佳答案。
export default {
data() {
return {
errors: [],
videos: [],
items: []
}
},
methods: {
idvideo: function() {
const data = this.items
const result = data.map((item) => {
return {
fetchId: item.snippet.resourceId.videoId
};
}).sort((a, b) => b.count - a.count);
var i, len, text;
for (i = 0, len = result.length, text = ""; i < len; i++) {
text += result[i].fetchId + ",";
}
var x = text.slice(0, -1);
return(x);
}
// Fetches posts when the component is created.
created() {
// Ini adalah API utk playlist yang dipilih
axios.get("https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&maxResults=50&playlistId=PLjj56jET6ecfmosJyFhZSNRJTSCC90hMp&key={YOUR_API_KEY}")
.then(response => {
// JSON responses are automatically parsed.
this.items = response.data.items
})
.catch(e => {
this.errors.push(e)
}),
// Ini adalah API utk data yang dipilih
axios.get('https://www.googleapis.com/youtube/v3/videos?part=snippet%2CcontentDetails%2Cstatistics&key={YOUR_API_KEY}&id='+this.idvideo())
.then(response => {
// JSON responses are automatically parsed.
this.videos = response.data.items
})
.catch(e => {
this.errors.push(e)
})
},
}
我非常感谢任何可以帮助我的解决方案。如果你们有实现此功能的最佳方法,请告诉我。
对不起,我的英语不好,还有任何错误。这是我第二次在该平台上发帖提问。
非常感谢先生!
答案 0 :(得分:0)
由于它们是异步请求,因此我想到了以下解决方案。
解决方案:
在第一个axios调用中移动下一个axios调用。这是因为,只有在首次调用之后,才会检索“项目”,然后将其分配给'System.Net.Http'
,因此下一个axios调用将具有来自this.items
函数的所需数据。
idvideo()