Я нашел проблему. Проблема в том, что Internet Explorer не поддерживает Разрушающее присваивание . Я нашел решение из этой нити
Таким образом, вместо строки ниже
const {items, nextPageToken} = response.result;
мы должны переписать раздел, как показано ниже,
const hash = response.result;
items = hash.items,
nextPageToken = hash.nextPageToken;
а также нижняя строка
pageToken
должна быть записана как
"pageToken" : pageToken
Ниже приведен окончательный фиксированный код. Тот, кто сталкивается с такими же проблемами, может использовать приведенный ниже код.
function getPlaylistItems(pageToken) {
return gapi.client.youtube.playlistItems.list({
"part": "snippet,contentDetails",
"maxResults": 50, // This is the maximum available value, according to the Google docs
"playlistId": PLAYLIST_ID,
"pageToken" : pageToken
}).then(function(response) {
//Fixed code
const hash = response.result;
items = hash.items,
nextPageToken = hash.nextPageToken;
// The items[] is an array of a playlist items.
// nextPageToken - if empty - there are no items left to fetch
playlistItems.push(items);
// It's up to you, how to handle the item from playlist.
// Add 'onclick' events to navigate to another video, or use another thumbnail image quality
var index = 0;
items.forEach(function(item) {
const thumbnailItem = createPlaylistItem(item, index);
playlist.appendChild(thumbnailItem);
index++;
});
maxVideoVisible = index - 3;
// Recursively get another portion of items, if there any left
if (nextPageToken) {
getPlaylistItems(nextPageToken);
}
}, function(err) {
console.error("Execute error", err);
});
}