【发布时间】:2020-05-09 14:31:08
【问题描述】:
我最近一直在使用 Spotify API 使用 reactJS 和 JS,并且遇到了一些问题,当我尝试从另一个函数调用一个函数时,我得到错误 this is not defined,指的是关键字 this .我对 JS 中的 OOP 不太熟悉,所以我认为它与那个或范围有关,但我不知道如何解决它。 我附上了下面从我的 app.js 中获取的代码。
getPlaylistTracks(tracksURL) {
spotifyApi.getPlaylist(tracksURL).then(
function (data) {
console.log(data);
},
function (err) {
console.error(err);
}
);
}
getPlaylists() {
spotifyApi.getUserPlaylists().then(
function (data) {
var playlistArray = [];
for(let i = 0; i < data.items.length; i++) {
var tracksURL = data.items[i].tracks.href.slice(37,59);
var playlist = new PlaylistObj(data.items[i].name, data.items[i].tracks.total, tracksURL);
this.getPlaylistTracks(tracksURL);
playlistArray[i] = playlist;
}
return playlistArray;
},
function (err) {
console.error(err);
}
);
}
该函数在 render() 中被调用,我得到的错误消息是。 未处理的拒绝(TypeError):这是未定义的
谢谢。
【问题讨论】:
标签: javascript reactjs oop