-1
我設置了這個for循環遍歷數組,以便我可以遍歷每個通道爲每個值獲取一個對象,但是當我分析代碼時,我得到一個錯誤,我不應該創建函數在一個循環內。有沒有更合適的方式來獲得這個功能,而不是在循環內創建函數?循環內的Ajax請求
這裏是對codepen鏈接:https://codepen.io/Na-Ya/pen/EwrOYY
$(document).ready(function(){
var channels = ["ESL_SC2", "OgamingSC2", "cretetion", "freecodecamp", "storbeck", "habathcx", "RobotCaleb", "noobs2ninjas"];
for (var i=0; i<channels.length; i++){
$.ajax({
method: "get",
url:"https://wind-bow.gomix.me/twitch-api/streams/" + channels[i],
dataType: "jsonp",
success: function(data){
// if statement for offline channels
if (data.stream === null){
//sets offlineName to the channel name
var offlineName = data._links.channel.replace("https://api.twitch.tv/kraken/channels/", "").toLowerCase();
$("#offline").append("<div class='row'>" + "<div class='col m-2'>" + "<h3>" + offlineName + ": Offline" + "</h3>" + "</div>" + "</div>");
}
else if (data.stream.channel !== null){
var channelName = data.stream.channel.display_name;
var channelStatus = data.stream.channel.status;
var channelLogo= data.stream.channel.logo;
var channelUrl = data.stream.channel.url;
var channelGame = data.stream.channel.game;
$("#online").append("<div class='row'>" + "<div class='col'>" + "<img class='mx-auto' src='" + channelLogo + "' alt='Logo'>" + "<h3>" + channelName + "</h3>" + "<a href='" + channelUrl + "'>" + "<p>" + channelGame + ": " + channelStatus + "</p>" + "</a>" + "</div>" + "</div>");
}
}, //closes out success function
}); //closes out ajax request
};//closes out for loop
}); //closes out document ready
的錯誤,我想你的意思是警告?如果你需要*在循環內部創建一個函數,那麼就執行它。如果你不這樣做,不要。在你的情況*不*這樣做就意味着在循環外定義你的ajax成功處理程序,這不會產生任何負面影響。 –
對不起,我沒有收到警告。我試圖在循環外定義ajax成功函數,但是我陷入了困境,無法獲取數組中每個值的對象。 –
這很不幸。 –